Skip to content
This repository was archived by the owner on Aug 15, 2023. It is now read-only.

Commit 4cba72e

Browse files
committed
fix(taboule): expect 'publicKey' to be passed as query param
1 parent dbc67df commit 4cba72e

File tree

3 files changed

+47
-35
lines changed

3 files changed

+47
-35
lines changed

packages/taboule/src/components/Taboule.tsx

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,9 @@ import {
55
GridColTypeDef,
66
GridEventListener,
77
} from '@mui/x-data-grid';
8-
import { APIError } from '@shared/errors/APIError';
98
import { AppError } from '@shared/errors/AppError';
109
import { GetLogger } from '@shared/logger';
11-
import { ObservableQuery } from 'avenger/lib/Query';
10+
import { ParsedInfo } from '@yttrex/shared/src/models/Metadata';
1211
import * as QR from 'avenger/lib/QueryResult';
1312
import { WithQueries } from 'avenger/lib/react';
1413
import debug from 'debug';
@@ -19,11 +18,14 @@ import { PathReporter } from 'io-ts/lib/PathReporter';
1918
import * as React from 'react';
2019
import * as config from '../config';
2120
import { TabouleDataProvider } from '../state';
22-
import { Results, SearchRequestInput, TabouleQueries } from '../state/queries';
21+
import {
22+
EndpointQuery,
23+
SearchRequestInput,
24+
TabouleQueries,
25+
} from '../state/queries';
2326
import { TabouleQueryKey } from '../state/types';
2427
import { ErrorOverlay } from './ErrorOverlay';
2528
import ExpandView from './expand-view/ExpandView';
26-
import { ParsedInfo } from '@yttrex/shared/src/models/Metadata';
2729
import './Taboule.css';
2830

2931
debug.enable(process.env.DEBUG ?? '');
@@ -95,11 +97,9 @@ export const Taboule = <Q extends keyof TabouleQueries>({
9597
() => TabouleDataProvider(baseURL),
9698
[baseURL]
9799
);
98-
const query: ObservableQuery<
99-
SearchRequestInput,
100-
APIError,
101-
Results<any>
102-
> = tabouleQueries.queries[queryKey];
100+
const query: EndpointQuery<SearchRequestInput, any> = tabouleQueries.queries[
101+
queryKey
102+
] as any;
103103

104104
const { inputs, ...queryConfig } = React.useMemo(
105105
() =>

packages/taboule/src/state/queries.ts

Lines changed: 33 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import { Step } from '@shared/models/Step';
2323
import { ListMetadataQuery } from '@yttrex/shared/endpoints/v2/metadata.endpoints';
2424

2525
export interface SearchRequestInput {
26-
Params: any;
26+
Params: { publicKey: string };
2727
Query: SearchQuery;
2828
}
2929

@@ -37,20 +37,27 @@ export interface Results<T> {
3737
content: T[];
3838
}
3939

40-
type EndpointQuery<C> = CachedQuery<SearchRequestInput, APIError, Results<C>>;
40+
export type EndpointQuery<Q extends {}, C> = CachedQuery<
41+
Q,
42+
APIError,
43+
Results<C>
44+
>;
4145

4246
export interface TabouleQueries {
43-
YCAIccRelatedUsers: EndpointQuery<ChannelRelated>;
44-
youtubeGetExperimentById: EndpointQuery<Step>;
45-
youtubeGetExperimentList: EndpointQuery<GuardoniExperiment>;
46-
youtubePersonalSearches: EndpointQuery<SearchMetadata>;
47-
youtubePersonalAds: EndpointQuery<any>;
48-
youtubePersonalHomes: EndpointQuery<HomeMetadata>;
49-
youtubePersonalVideos: EndpointQuery<VideoMetadata>;
47+
YCAIccRelatedUsers: EndpointQuery<any, ChannelRelated>;
48+
youtubeGetExperimentById: EndpointQuery<any, Step>;
49+
youtubeGetExperimentList: EndpointQuery<
50+
SearchRequestInput,
51+
GuardoniExperiment
52+
>;
53+
youtubePersonalSearches: EndpointQuery<SearchRequestInput, SearchMetadata>;
54+
youtubePersonalAds: EndpointQuery<SearchRequestInput, any>;
55+
youtubePersonalHomes: EndpointQuery<SearchRequestInput, HomeMetadata>;
56+
youtubePersonalVideos: EndpointQuery<SearchRequestInput, VideoMetadata>;
5057
// tik tok
51-
tikTokPersonalHTMLSummary: EndpointQuery<SummaryHTMLMetadata>;
52-
tikTokPersonalSearch: EndpointQuery<TikTokPSearchMetadata>;
53-
tikTokSearches: EndpointQuery<TKSearchMetadata>;
58+
tikTokPersonalHTMLSummary: EndpointQuery<any, SummaryHTMLMetadata>;
59+
tikTokPersonalSearch: EndpointQuery<any, TikTokPSearchMetadata>;
60+
tikTokSearches: EndpointQuery<any, TKSearchMetadata>;
5461
}
5562

5663
interface GetTabouleQueriesProps {
@@ -153,7 +160,6 @@ export const GetTabouleQueries = ({
153160
researchTag: undefined,
154161
format: 'json',
155162
nature: 'home',
156-
publicKey: 'H7AsuUszehN4qKTj2GYYwNNzkJVqUQBRo2wgKevzeUwx',
157163
},
158164
}),
159165
TE.map((content) => {
@@ -193,14 +199,14 @@ export const GetTabouleQueries = ({
193199
pipe(
194200
YTAPI.v2.Metadata.ListMetadata({
195201
Query: {
202+
...input.Params,
196203
...input.Query,
197204
amount: '20' as any,
198205
skip: '0' as any,
199206
experimentId: undefined,
200207
researchTag: undefined,
201208
format: 'json',
202209
nature: 'video',
203-
publicKey: 'H7AsuUszehN4qKTj2GYYwNNzkJVqUQBRo2wgKevzeUwx',
204210
},
205211
}),
206212
TE.map((content) => {
@@ -231,12 +237,13 @@ export const GetTabouleQueries = ({
231237
researchTag: undefined,
232238
format: 'json',
233239
nature: 'search',
234-
publicKey: 'H7AsuUszehN4qKTj2GYYwNNzkJVqUQBRo2wgKevzeUwx',
235240
},
236241
}),
237242
TE.map((content) => {
238-
const x = content.filter((c) => c.type === 'search');
239-
return x as any[] as SearchMetadata[];
243+
const x = content.filter(
244+
(c) => c.type === 'search'
245+
) as any[] as SearchMetadata[];
246+
return x;
240247
}),
241248
TE.map((content) => ({
242249
total: content.length ?? 0,
@@ -263,16 +270,21 @@ export const GetTabouleQueries = ({
263270
);
264271

265272
const tikTokPersonalSearch = queryStrict<
266-
SearchRequestInput,
273+
SearchRequestInput & { Params: { publicKey: string } },
267274
APIError,
268275
Results<TikTokPSearchMetadata>
269276
>(
270277
(input) =>
271278
pipe(
272-
YTAPI.v1.Public.GetPersonalSearchByPublicKey(input),
279+
TK_API.v2.Personal.GetPersonalJSON({
280+
Params: {
281+
...input.Params,
282+
what: 'search',
283+
},
284+
}),
273285
TE.map((content) => ({
274-
total: content.metadata.length,
275-
content: content.metadata,
286+
total: content.total,
287+
content: content.content as any[],
276288
}))
277289
),
278290
available

platforms/yttrex/shared/src/models/Metadata.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,17 @@ export const ParsedInfo = t.strict(
1414
verified: t.union([t.boolean, t.null]),
1515
// foryou: t.union([t.string, t.undefined, t.null]),
1616
parameter: t.union([t.string, t.undefined]),
17-
params: t.union([t.record(t.string, t.string), t.undefined]),
17+
params: t.union([t.record(t.string, t.string), t.undefined, t.null]),
1818
title: t.union([t.string, t.undefined]),
1919
recommendedHref: t.string,
2020
recommendedTitle: t.union([t.string, t.undefined]),
2121
recommendedSource: t.union([t.string, t.null, t.undefined]),
2222
recommendedLength: t.union([t.number, t.undefined]),
23-
recommendedDisplayL: t.union([t.string, t.undefined]),
23+
recommendedDisplayL: t.union([t.string, t.undefined, t.null]),
2424
// moment duration as string
25-
recommendedPubTime: t.union([t.any, t.undefined]),
26-
publicationTime: t.union([DateFromISOString, t.undefined]),
27-
recommendedThumbnail: t.union([t.string, t.undefined]),
25+
recommendedPubTime: t.union([t.any, t.undefined, t.null]),
26+
publicationTime: t.union([DateFromISOString, t.undefined, t.null]),
27+
recommendedThumbnail: t.union([t.string, t.undefined, t.null]),
2828
recommendedViews: t.union([t.number, t.undefined]),
2929
views: t.union([t.number, t.undefined]),
3030
},

0 commit comments

Comments
 (0)