@tmdb-graphql-api/rest-client 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +1 -0
- package/dist/cjs/index.cjs +162 -0
- package/dist/cjs/index.cjs.map +1 -0
- package/dist/esm/index.mjs +132 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/types/cjs/constants.d.cts +29 -0
- package/dist/types/cjs/constants.d.cts.map +1 -0
- package/dist/types/cjs/helpers/pathTemplateCallback.d.cts +2 -0
- package/dist/types/cjs/helpers/pathTemplateCallback.d.cts.map +1 -0
- package/dist/types/cjs/index.d.cts +4 -0
- package/dist/types/cjs/index.d.cts.map +1 -0
- package/dist/types/cjs/main.d.cts +3 -0
- package/dist/types/cjs/main.d.cts.map +1 -0
- package/dist/types/cjs/types.d.cts +13 -0
- package/dist/types/cjs/types.d.cts.map +1 -0
- package/dist/types/esm/constants.d.ts +29 -0
- package/dist/types/esm/constants.d.ts.map +1 -0
- package/dist/types/esm/helpers/pathTemplateCallback.d.ts +2 -0
- package/dist/types/esm/helpers/pathTemplateCallback.d.ts.map +1 -0
- package/dist/types/esm/index.d.ts +4 -0
- package/dist/types/esm/index.d.ts.map +1 -0
- package/dist/types/esm/main.d.ts +3 -0
- package/dist/types/esm/main.d.ts.map +1 -0
- package/dist/types/esm/types.d.ts +13 -0
- package/dist/types/esm/types.d.ts.map +1 -0
- package/dist/types/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +58 -0
- package/src/__snapshots__/main.test.ts.snap +57 -0
- package/src/constants.ts +31 -0
- package/src/helpers/pathTemplateCallback.ts +11 -0
- package/src/index.ts +3 -0
- package/src/main.test.ts +21 -0
- package/src/main.ts +78 -0
- package/src/types.ts +35 -0
- package/tsconfig.build.json +10 -0
- package/tsconfig.json +8 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2018 dylanaubrey
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# work in progress
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var core = require('@graphql-box/core');
|
|
4
|
+
var getta = require('getta');
|
|
5
|
+
var node_perf_hooks = require('node:perf_hooks');
|
|
6
|
+
|
|
7
|
+
const BASE_PATH = 'https://api.themoviedb.org/3/';
|
|
8
|
+
const GET_METHOD = 'get';
|
|
9
|
+
const POST_METHOD = 'post';
|
|
10
|
+
const PUT_METHOD = 'put';
|
|
11
|
+
const DELETE_METHOD = 'delete';
|
|
12
|
+
const OPTIONAL_TYPE_PATH_TEMPLATE_REGEX = /({type\?})/g;
|
|
13
|
+
const AUTHENTICATE_PATH = 'authentication/{type}/new';
|
|
14
|
+
const CERTIFICATIONS_PATH = 'certification/{type}/list';
|
|
15
|
+
const COLLECTION_PATH = 'collection/{id}/{type?}';
|
|
16
|
+
const COMPANY_PATH = 'company/{id}/{type?}';
|
|
17
|
+
const CONFIGURATION_PATH = 'configuration/{type?}';
|
|
18
|
+
const CREDIT_PATH = 'credit/{id}';
|
|
19
|
+
const DISCOVER_PATH = 'discover/{type}';
|
|
20
|
+
const EPISODE_PATH = 'tv/{id}/season/{seasonNumber}/episode/{episodeNumber}/{type?}';
|
|
21
|
+
const FIND_PATH = 'find/{id}';
|
|
22
|
+
const GENRE_PATH = 'genre/{type}/list';
|
|
23
|
+
const KEYWORD_PATH = 'keyword/{id}';
|
|
24
|
+
const MOVIE_PATH = 'movie/{id}/{type?}';
|
|
25
|
+
const NETWORK_PATH = 'network/{id}/{type?}';
|
|
26
|
+
const PERSON_PATH = 'person/{id}/{type?}';
|
|
27
|
+
const POPULAR_PATH = '{type}/popular';
|
|
28
|
+
const RATED_PATH = 'guest_session/{id}/rated/{type}';
|
|
29
|
+
const REVIEW_PATH = 'review/{id}';
|
|
30
|
+
const SEARCH_PATH = 'search/{type}';
|
|
31
|
+
const SEASON_PATH = 'tv/{id}/season/{number}/{type?}';
|
|
32
|
+
const TRENDING_PATH = 'trending/{type}/{subType}';
|
|
33
|
+
const TV_PATH = 'tv/{id}/{type?}';
|
|
34
|
+
const WATCH_PROVIDER_PATH = '{type}/{id}/watch/providers';
|
|
35
|
+
|
|
36
|
+
const pathTemplateCallback = (pathTemplate, data, pathTemplateRegExp) => {
|
|
37
|
+
const populatedPath = getta.defaultPathTemplateCallback(pathTemplate, data, pathTemplateRegExp);
|
|
38
|
+
return populatedPath.replace(OPTIONAL_TYPE_PATH_TEMPLATE_REGEX, data.type ?? '');
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
const {
|
|
42
|
+
NODE_ENV
|
|
43
|
+
} = process.env;
|
|
44
|
+
const createRestClient = ({
|
|
45
|
+
cache,
|
|
46
|
+
debugManager,
|
|
47
|
+
queryParams
|
|
48
|
+
}) => getta.createRestClient({
|
|
49
|
+
basePath: BASE_PATH,
|
|
50
|
+
cache,
|
|
51
|
+
fetchTimeout: NODE_ENV === 'development' ? 999_999 : undefined,
|
|
52
|
+
log: (message, data, logLevel) => {
|
|
53
|
+
if (message === getta.REQUEST_SENT) {
|
|
54
|
+
debugManager?.log(core.RESOLVER_EXECUTED, data, logLevel);
|
|
55
|
+
} else if (message === getta.RESPONSE_RECEIVED) {
|
|
56
|
+
debugManager?.log(core.RESOLVER_RESOLVED, data, logLevel);
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
pathTemplateCallback,
|
|
60
|
+
pathTemplateRegExp: /({type})|({subType})|({number})|({seasonNumber})|({episodeNumber})|({id})/g,
|
|
61
|
+
performance: node_perf_hooks.performance,
|
|
62
|
+
queryParams,
|
|
63
|
+
rateLimitPerSecond: 30
|
|
64
|
+
}, {
|
|
65
|
+
authenticate: [AUTHENTICATE_PATH, {
|
|
66
|
+
method: GET_METHOD
|
|
67
|
+
}],
|
|
68
|
+
certifications: [CERTIFICATIONS_PATH, {
|
|
69
|
+
method: GET_METHOD
|
|
70
|
+
}],
|
|
71
|
+
collection: [COLLECTION_PATH, {
|
|
72
|
+
method: GET_METHOD
|
|
73
|
+
}],
|
|
74
|
+
company: [COMPANY_PATH, {
|
|
75
|
+
method: GET_METHOD
|
|
76
|
+
}],
|
|
77
|
+
configuration: [CONFIGURATION_PATH, {
|
|
78
|
+
method: GET_METHOD
|
|
79
|
+
}],
|
|
80
|
+
credit: [CREDIT_PATH, {
|
|
81
|
+
method: GET_METHOD
|
|
82
|
+
}],
|
|
83
|
+
discover: [DISCOVER_PATH, {
|
|
84
|
+
method: GET_METHOD
|
|
85
|
+
}],
|
|
86
|
+
episode: [EPISODE_PATH, {
|
|
87
|
+
method: GET_METHOD
|
|
88
|
+
}],
|
|
89
|
+
find: [FIND_PATH, {
|
|
90
|
+
method: GET_METHOD
|
|
91
|
+
}],
|
|
92
|
+
genres: [GENRE_PATH, {
|
|
93
|
+
method: GET_METHOD
|
|
94
|
+
}],
|
|
95
|
+
keyword: [KEYWORD_PATH, {
|
|
96
|
+
method: GET_METHOD
|
|
97
|
+
}],
|
|
98
|
+
movie: [MOVIE_PATH, {
|
|
99
|
+
method: GET_METHOD
|
|
100
|
+
}],
|
|
101
|
+
network: [NETWORK_PATH, {
|
|
102
|
+
method: GET_METHOD
|
|
103
|
+
}],
|
|
104
|
+
person: [PERSON_PATH, {
|
|
105
|
+
method: GET_METHOD
|
|
106
|
+
}],
|
|
107
|
+
popular: [POPULAR_PATH, {
|
|
108
|
+
method: GET_METHOD
|
|
109
|
+
}],
|
|
110
|
+
rated: [RATED_PATH, {
|
|
111
|
+
method: GET_METHOD
|
|
112
|
+
}],
|
|
113
|
+
review: [REVIEW_PATH, {
|
|
114
|
+
method: GET_METHOD
|
|
115
|
+
}],
|
|
116
|
+
search: [SEARCH_PATH, {
|
|
117
|
+
method: GET_METHOD
|
|
118
|
+
}],
|
|
119
|
+
season: [SEASON_PATH, {
|
|
120
|
+
method: GET_METHOD
|
|
121
|
+
}],
|
|
122
|
+
trending: [TRENDING_PATH, {
|
|
123
|
+
method: GET_METHOD
|
|
124
|
+
}],
|
|
125
|
+
tv: [TV_PATH, {
|
|
126
|
+
method: GET_METHOD
|
|
127
|
+
}],
|
|
128
|
+
watchProviders: [WATCH_PROVIDER_PATH, {
|
|
129
|
+
method: GET_METHOD
|
|
130
|
+
}]
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
exports.AUTHENTICATE_PATH = AUTHENTICATE_PATH;
|
|
134
|
+
exports.BASE_PATH = BASE_PATH;
|
|
135
|
+
exports.CERTIFICATIONS_PATH = CERTIFICATIONS_PATH;
|
|
136
|
+
exports.COLLECTION_PATH = COLLECTION_PATH;
|
|
137
|
+
exports.COMPANY_PATH = COMPANY_PATH;
|
|
138
|
+
exports.CONFIGURATION_PATH = CONFIGURATION_PATH;
|
|
139
|
+
exports.CREDIT_PATH = CREDIT_PATH;
|
|
140
|
+
exports.DELETE_METHOD = DELETE_METHOD;
|
|
141
|
+
exports.DISCOVER_PATH = DISCOVER_PATH;
|
|
142
|
+
exports.EPISODE_PATH = EPISODE_PATH;
|
|
143
|
+
exports.FIND_PATH = FIND_PATH;
|
|
144
|
+
exports.GENRE_PATH = GENRE_PATH;
|
|
145
|
+
exports.GET_METHOD = GET_METHOD;
|
|
146
|
+
exports.KEYWORD_PATH = KEYWORD_PATH;
|
|
147
|
+
exports.MOVIE_PATH = MOVIE_PATH;
|
|
148
|
+
exports.NETWORK_PATH = NETWORK_PATH;
|
|
149
|
+
exports.OPTIONAL_TYPE_PATH_TEMPLATE_REGEX = OPTIONAL_TYPE_PATH_TEMPLATE_REGEX;
|
|
150
|
+
exports.PERSON_PATH = PERSON_PATH;
|
|
151
|
+
exports.POPULAR_PATH = POPULAR_PATH;
|
|
152
|
+
exports.POST_METHOD = POST_METHOD;
|
|
153
|
+
exports.PUT_METHOD = PUT_METHOD;
|
|
154
|
+
exports.RATED_PATH = RATED_PATH;
|
|
155
|
+
exports.REVIEW_PATH = REVIEW_PATH;
|
|
156
|
+
exports.SEARCH_PATH = SEARCH_PATH;
|
|
157
|
+
exports.SEASON_PATH = SEASON_PATH;
|
|
158
|
+
exports.TRENDING_PATH = TRENDING_PATH;
|
|
159
|
+
exports.TV_PATH = TV_PATH;
|
|
160
|
+
exports.WATCH_PROVIDER_PATH = WATCH_PROVIDER_PATH;
|
|
161
|
+
exports.createRestClient = createRestClient;
|
|
162
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../rest-client/src//constants.ts","../rest-client/src//helpers/pathTemplateCallback.ts","../rest-client/src//main.ts"],"sourcesContent":["export const BASE_PATH = 'https://api.themoviedb.org/3/';\n\nexport const GET_METHOD = 'get' as const;\nexport const POST_METHOD = 'post' as const;\nexport const PUT_METHOD = 'put' as const;\nexport const DELETE_METHOD = 'delete' as const;\n\nexport const OPTIONAL_TYPE_PATH_TEMPLATE_REGEX = /({type\\?})/g;\n\nexport const AUTHENTICATE_PATH = 'authentication/{type}/new';\nexport const CERTIFICATIONS_PATH = 'certification/{type}/list';\nexport const COLLECTION_PATH = 'collection/{id}/{type?}';\nexport const COMPANY_PATH = 'company/{id}/{type?}';\nexport const CONFIGURATION_PATH = 'configuration/{type?}';\nexport const CREDIT_PATH = 'credit/{id}';\nexport const DISCOVER_PATH = 'discover/{type}';\nexport const EPISODE_PATH = 'tv/{id}/season/{seasonNumber}/episode/{episodeNumber}/{type?}';\nexport const FIND_PATH = 'find/{id}';\nexport const GENRE_PATH = 'genre/{type}/list';\nexport const KEYWORD_PATH = 'keyword/{id}';\nexport const MOVIE_PATH = 'movie/{id}/{type?}';\nexport const NETWORK_PATH = 'network/{id}/{type?}';\nexport const PERSON_PATH = 'person/{id}/{type?}';\nexport const POPULAR_PATH = '{type}/popular';\nexport const RATED_PATH = 'guest_session/{id}/rated/{type}';\nexport const REVIEW_PATH = 'review/{id}';\nexport const SEARCH_PATH = 'search/{type}';\nexport const SEASON_PATH = 'tv/{id}/season/{number}/{type?}';\nexport const TRENDING_PATH = 'trending/{type}/{subType}';\nexport const TV_PATH = 'tv/{id}/{type?}';\nexport const WATCH_PROVIDER_PATH = '{type}/{id}/watch/providers';\n","import { defaultPathTemplateCallback } from 'getta';\nimport { OPTIONAL_TYPE_PATH_TEMPLATE_REGEX } from '../constants.ts';\n\nexport const pathTemplateCallback = (\n pathTemplate: string,\n data: Record<string, string>,\n pathTemplateRegExp: RegExp\n) => {\n const populatedPath = defaultPathTemplateCallback(pathTemplate, data, pathTemplateRegExp);\n return populatedPath.replace(OPTIONAL_TYPE_PATH_TEMPLATE_REGEX, data.type ?? '');\n};\n","import { RESOLVER_EXECUTED, RESOLVER_RESOLVED } from '@graphql-box/core';\nimport { REQUEST_SENT, RESPONSE_RECEIVED, createRestClient as create } from 'getta';\nimport { performance } from 'node:perf_hooks';\nimport {\n AUTHENTICATE_PATH,\n BASE_PATH,\n CERTIFICATIONS_PATH,\n COLLECTION_PATH,\n COMPANY_PATH,\n CONFIGURATION_PATH,\n CREDIT_PATH,\n DISCOVER_PATH,\n EPISODE_PATH,\n FIND_PATH,\n GENRE_PATH,\n GET_METHOD,\n KEYWORD_PATH,\n MOVIE_PATH,\n NETWORK_PATH,\n PERSON_PATH,\n POPULAR_PATH,\n RATED_PATH,\n REVIEW_PATH,\n SEARCH_PATH,\n SEASON_PATH,\n TRENDING_PATH,\n TV_PATH,\n WATCH_PROVIDER_PATH,\n} from './constants.ts';\nimport { pathTemplateCallback } from './helpers/pathTemplateCallback.ts';\nimport type { CreateRestClientParams, ShortcutMethodNames } from './types.ts';\n\nconst { NODE_ENV } = process.env;\n\nexport const createRestClient = ({ cache, debugManager, queryParams }: CreateRestClientParams) =>\n create<ShortcutMethodNames>(\n {\n basePath: BASE_PATH,\n cache,\n fetchTimeout: NODE_ENV === 'development' ? 999_999 : undefined,\n log: (message, data, logLevel) => {\n if (message === REQUEST_SENT) {\n debugManager?.log(RESOLVER_EXECUTED, data, logLevel);\n } else if (message === RESPONSE_RECEIVED) {\n debugManager?.log(RESOLVER_RESOLVED, data, logLevel);\n }\n },\n pathTemplateCallback,\n pathTemplateRegExp: /({type})|({subType})|({number})|({seasonNumber})|({episodeNumber})|({id})/g,\n performance,\n queryParams,\n rateLimitPerSecond: 30,\n },\n {\n authenticate: [AUTHENTICATE_PATH, { method: GET_METHOD }],\n certifications: [CERTIFICATIONS_PATH, { method: GET_METHOD }],\n collection: [COLLECTION_PATH, { method: GET_METHOD }],\n company: [COMPANY_PATH, { method: GET_METHOD }],\n configuration: [CONFIGURATION_PATH, { method: GET_METHOD }],\n credit: [CREDIT_PATH, { method: GET_METHOD }],\n discover: [DISCOVER_PATH, { method: GET_METHOD }],\n episode: [EPISODE_PATH, { method: GET_METHOD }],\n find: [FIND_PATH, { method: GET_METHOD }],\n genres: [GENRE_PATH, { method: GET_METHOD }],\n keyword: [KEYWORD_PATH, { method: GET_METHOD }],\n movie: [MOVIE_PATH, { method: GET_METHOD }],\n network: [NETWORK_PATH, { method: GET_METHOD }],\n person: [PERSON_PATH, { method: GET_METHOD }],\n popular: [POPULAR_PATH, { method: GET_METHOD }],\n rated: [RATED_PATH, { method: GET_METHOD }],\n review: [REVIEW_PATH, { method: GET_METHOD }],\n search: [SEARCH_PATH, { method: GET_METHOD }],\n season: [SEASON_PATH, { method: GET_METHOD }],\n trending: [TRENDING_PATH, { method: GET_METHOD }],\n tv: [TV_PATH, { method: GET_METHOD }],\n watchProviders: [WATCH_PROVIDER_PATH, { method: GET_METHOD }],\n }\n );\n"],"names":["BASE_PATH","GET_METHOD","POST_METHOD","PUT_METHOD","DELETE_METHOD","OPTIONAL_TYPE_PATH_TEMPLATE_REGEX","AUTHENTICATE_PATH","CERTIFICATIONS_PATH","COLLECTION_PATH","COMPANY_PATH","CONFIGURATION_PATH","CREDIT_PATH","DISCOVER_PATH","EPISODE_PATH","FIND_PATH","GENRE_PATH","KEYWORD_PATH","MOVIE_PATH","NETWORK_PATH","PERSON_PATH","POPULAR_PATH","RATED_PATH","REVIEW_PATH","SEARCH_PATH","SEASON_PATH","TRENDING_PATH","TV_PATH","WATCH_PROVIDER_PATH","pathTemplateCallback","pathTemplate","data","pathTemplateRegExp","populatedPath","defaultPathTemplateCallback","replace","type","NODE_ENV","process","env","createRestClient","cache","debugManager","queryParams","create","basePath","fetchTimeout","undefined","log","message","logLevel","REQUEST_SENT","RESOLVER_EXECUTED","RESPONSE_RECEIVED","RESOLVER_RESOLVED","performance","rateLimitPerSecond","authenticate","method","certifications","collection","company","configuration","credit","discover","episode","find","genres","keyword","movie","network","person","popular","rated","review","search","season","trending","tv","watchProviders"],"mappings":"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"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { RESOLVER_EXECUTED, RESOLVER_RESOLVED } from '@graphql-box/core';
|
|
2
|
+
import { defaultPathTemplateCallback, createRestClient as createRestClient$1, REQUEST_SENT, RESPONSE_RECEIVED } from 'getta';
|
|
3
|
+
import { performance } from 'node:perf_hooks';
|
|
4
|
+
|
|
5
|
+
const BASE_PATH = 'https://api.themoviedb.org/3/';
|
|
6
|
+
const GET_METHOD = 'get';
|
|
7
|
+
const POST_METHOD = 'post';
|
|
8
|
+
const PUT_METHOD = 'put';
|
|
9
|
+
const DELETE_METHOD = 'delete';
|
|
10
|
+
const OPTIONAL_TYPE_PATH_TEMPLATE_REGEX = /({type\?})/g;
|
|
11
|
+
const AUTHENTICATE_PATH = 'authentication/{type}/new';
|
|
12
|
+
const CERTIFICATIONS_PATH = 'certification/{type}/list';
|
|
13
|
+
const COLLECTION_PATH = 'collection/{id}/{type?}';
|
|
14
|
+
const COMPANY_PATH = 'company/{id}/{type?}';
|
|
15
|
+
const CONFIGURATION_PATH = 'configuration/{type?}';
|
|
16
|
+
const CREDIT_PATH = 'credit/{id}';
|
|
17
|
+
const DISCOVER_PATH = 'discover/{type}';
|
|
18
|
+
const EPISODE_PATH = 'tv/{id}/season/{seasonNumber}/episode/{episodeNumber}/{type?}';
|
|
19
|
+
const FIND_PATH = 'find/{id}';
|
|
20
|
+
const GENRE_PATH = 'genre/{type}/list';
|
|
21
|
+
const KEYWORD_PATH = 'keyword/{id}';
|
|
22
|
+
const MOVIE_PATH = 'movie/{id}/{type?}';
|
|
23
|
+
const NETWORK_PATH = 'network/{id}/{type?}';
|
|
24
|
+
const PERSON_PATH = 'person/{id}/{type?}';
|
|
25
|
+
const POPULAR_PATH = '{type}/popular';
|
|
26
|
+
const RATED_PATH = 'guest_session/{id}/rated/{type}';
|
|
27
|
+
const REVIEW_PATH = 'review/{id}';
|
|
28
|
+
const SEARCH_PATH = 'search/{type}';
|
|
29
|
+
const SEASON_PATH = 'tv/{id}/season/{number}/{type?}';
|
|
30
|
+
const TRENDING_PATH = 'trending/{type}/{subType}';
|
|
31
|
+
const TV_PATH = 'tv/{id}/{type?}';
|
|
32
|
+
const WATCH_PROVIDER_PATH = '{type}/{id}/watch/providers';
|
|
33
|
+
|
|
34
|
+
const pathTemplateCallback = (pathTemplate, data, pathTemplateRegExp) => {
|
|
35
|
+
const populatedPath = defaultPathTemplateCallback(pathTemplate, data, pathTemplateRegExp);
|
|
36
|
+
return populatedPath.replace(OPTIONAL_TYPE_PATH_TEMPLATE_REGEX, data.type ?? '');
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const {
|
|
40
|
+
NODE_ENV
|
|
41
|
+
} = process.env;
|
|
42
|
+
const createRestClient = ({
|
|
43
|
+
cache,
|
|
44
|
+
debugManager,
|
|
45
|
+
queryParams
|
|
46
|
+
}) => createRestClient$1({
|
|
47
|
+
basePath: BASE_PATH,
|
|
48
|
+
cache,
|
|
49
|
+
fetchTimeout: NODE_ENV === 'development' ? 999_999 : undefined,
|
|
50
|
+
log: (message, data, logLevel) => {
|
|
51
|
+
if (message === REQUEST_SENT) {
|
|
52
|
+
debugManager?.log(RESOLVER_EXECUTED, data, logLevel);
|
|
53
|
+
} else if (message === RESPONSE_RECEIVED) {
|
|
54
|
+
debugManager?.log(RESOLVER_RESOLVED, data, logLevel);
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
pathTemplateCallback,
|
|
58
|
+
pathTemplateRegExp: /({type})|({subType})|({number})|({seasonNumber})|({episodeNumber})|({id})/g,
|
|
59
|
+
performance,
|
|
60
|
+
queryParams,
|
|
61
|
+
rateLimitPerSecond: 30
|
|
62
|
+
}, {
|
|
63
|
+
authenticate: [AUTHENTICATE_PATH, {
|
|
64
|
+
method: GET_METHOD
|
|
65
|
+
}],
|
|
66
|
+
certifications: [CERTIFICATIONS_PATH, {
|
|
67
|
+
method: GET_METHOD
|
|
68
|
+
}],
|
|
69
|
+
collection: [COLLECTION_PATH, {
|
|
70
|
+
method: GET_METHOD
|
|
71
|
+
}],
|
|
72
|
+
company: [COMPANY_PATH, {
|
|
73
|
+
method: GET_METHOD
|
|
74
|
+
}],
|
|
75
|
+
configuration: [CONFIGURATION_PATH, {
|
|
76
|
+
method: GET_METHOD
|
|
77
|
+
}],
|
|
78
|
+
credit: [CREDIT_PATH, {
|
|
79
|
+
method: GET_METHOD
|
|
80
|
+
}],
|
|
81
|
+
discover: [DISCOVER_PATH, {
|
|
82
|
+
method: GET_METHOD
|
|
83
|
+
}],
|
|
84
|
+
episode: [EPISODE_PATH, {
|
|
85
|
+
method: GET_METHOD
|
|
86
|
+
}],
|
|
87
|
+
find: [FIND_PATH, {
|
|
88
|
+
method: GET_METHOD
|
|
89
|
+
}],
|
|
90
|
+
genres: [GENRE_PATH, {
|
|
91
|
+
method: GET_METHOD
|
|
92
|
+
}],
|
|
93
|
+
keyword: [KEYWORD_PATH, {
|
|
94
|
+
method: GET_METHOD
|
|
95
|
+
}],
|
|
96
|
+
movie: [MOVIE_PATH, {
|
|
97
|
+
method: GET_METHOD
|
|
98
|
+
}],
|
|
99
|
+
network: [NETWORK_PATH, {
|
|
100
|
+
method: GET_METHOD
|
|
101
|
+
}],
|
|
102
|
+
person: [PERSON_PATH, {
|
|
103
|
+
method: GET_METHOD
|
|
104
|
+
}],
|
|
105
|
+
popular: [POPULAR_PATH, {
|
|
106
|
+
method: GET_METHOD
|
|
107
|
+
}],
|
|
108
|
+
rated: [RATED_PATH, {
|
|
109
|
+
method: GET_METHOD
|
|
110
|
+
}],
|
|
111
|
+
review: [REVIEW_PATH, {
|
|
112
|
+
method: GET_METHOD
|
|
113
|
+
}],
|
|
114
|
+
search: [SEARCH_PATH, {
|
|
115
|
+
method: GET_METHOD
|
|
116
|
+
}],
|
|
117
|
+
season: [SEASON_PATH, {
|
|
118
|
+
method: GET_METHOD
|
|
119
|
+
}],
|
|
120
|
+
trending: [TRENDING_PATH, {
|
|
121
|
+
method: GET_METHOD
|
|
122
|
+
}],
|
|
123
|
+
tv: [TV_PATH, {
|
|
124
|
+
method: GET_METHOD
|
|
125
|
+
}],
|
|
126
|
+
watchProviders: [WATCH_PROVIDER_PATH, {
|
|
127
|
+
method: GET_METHOD
|
|
128
|
+
}]
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
export { AUTHENTICATE_PATH, BASE_PATH, CERTIFICATIONS_PATH, COLLECTION_PATH, COMPANY_PATH, CONFIGURATION_PATH, CREDIT_PATH, DELETE_METHOD, DISCOVER_PATH, EPISODE_PATH, FIND_PATH, GENRE_PATH, GET_METHOD, KEYWORD_PATH, MOVIE_PATH, NETWORK_PATH, OPTIONAL_TYPE_PATH_TEMPLATE_REGEX, PERSON_PATH, POPULAR_PATH, POST_METHOD, PUT_METHOD, RATED_PATH, REVIEW_PATH, SEARCH_PATH, SEASON_PATH, TRENDING_PATH, TV_PATH, WATCH_PROVIDER_PATH, createRestClient };
|
|
132
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../rest-client/src//constants.ts","../rest-client/src//helpers/pathTemplateCallback.ts","../rest-client/src//main.ts"],"sourcesContent":["export const BASE_PATH = 'https://api.themoviedb.org/3/';\n\nexport const GET_METHOD = 'get' as const;\nexport const POST_METHOD = 'post' as const;\nexport const PUT_METHOD = 'put' as const;\nexport const DELETE_METHOD = 'delete' as const;\n\nexport const OPTIONAL_TYPE_PATH_TEMPLATE_REGEX = /({type\\?})/g;\n\nexport const AUTHENTICATE_PATH = 'authentication/{type}/new';\nexport const CERTIFICATIONS_PATH = 'certification/{type}/list';\nexport const COLLECTION_PATH = 'collection/{id}/{type?}';\nexport const COMPANY_PATH = 'company/{id}/{type?}';\nexport const CONFIGURATION_PATH = 'configuration/{type?}';\nexport const CREDIT_PATH = 'credit/{id}';\nexport const DISCOVER_PATH = 'discover/{type}';\nexport const EPISODE_PATH = 'tv/{id}/season/{seasonNumber}/episode/{episodeNumber}/{type?}';\nexport const FIND_PATH = 'find/{id}';\nexport const GENRE_PATH = 'genre/{type}/list';\nexport const KEYWORD_PATH = 'keyword/{id}';\nexport const MOVIE_PATH = 'movie/{id}/{type?}';\nexport const NETWORK_PATH = 'network/{id}/{type?}';\nexport const PERSON_PATH = 'person/{id}/{type?}';\nexport const POPULAR_PATH = '{type}/popular';\nexport const RATED_PATH = 'guest_session/{id}/rated/{type}';\nexport const REVIEW_PATH = 'review/{id}';\nexport const SEARCH_PATH = 'search/{type}';\nexport const SEASON_PATH = 'tv/{id}/season/{number}/{type?}';\nexport const TRENDING_PATH = 'trending/{type}/{subType}';\nexport const TV_PATH = 'tv/{id}/{type?}';\nexport const WATCH_PROVIDER_PATH = '{type}/{id}/watch/providers';\n","import { defaultPathTemplateCallback } from 'getta';\nimport { OPTIONAL_TYPE_PATH_TEMPLATE_REGEX } from '../constants.ts';\n\nexport const pathTemplateCallback = (\n pathTemplate: string,\n data: Record<string, string>,\n pathTemplateRegExp: RegExp\n) => {\n const populatedPath = defaultPathTemplateCallback(pathTemplate, data, pathTemplateRegExp);\n return populatedPath.replace(OPTIONAL_TYPE_PATH_TEMPLATE_REGEX, data.type ?? '');\n};\n","import { RESOLVER_EXECUTED, RESOLVER_RESOLVED } from '@graphql-box/core';\nimport { REQUEST_SENT, RESPONSE_RECEIVED, createRestClient as create } from 'getta';\nimport { performance } from 'node:perf_hooks';\nimport {\n AUTHENTICATE_PATH,\n BASE_PATH,\n CERTIFICATIONS_PATH,\n COLLECTION_PATH,\n COMPANY_PATH,\n CONFIGURATION_PATH,\n CREDIT_PATH,\n DISCOVER_PATH,\n EPISODE_PATH,\n FIND_PATH,\n GENRE_PATH,\n GET_METHOD,\n KEYWORD_PATH,\n MOVIE_PATH,\n NETWORK_PATH,\n PERSON_PATH,\n POPULAR_PATH,\n RATED_PATH,\n REVIEW_PATH,\n SEARCH_PATH,\n SEASON_PATH,\n TRENDING_PATH,\n TV_PATH,\n WATCH_PROVIDER_PATH,\n} from './constants.ts';\nimport { pathTemplateCallback } from './helpers/pathTemplateCallback.ts';\nimport type { CreateRestClientParams, ShortcutMethodNames } from './types.ts';\n\nconst { NODE_ENV } = process.env;\n\nexport const createRestClient = ({ cache, debugManager, queryParams }: CreateRestClientParams) =>\n create<ShortcutMethodNames>(\n {\n basePath: BASE_PATH,\n cache,\n fetchTimeout: NODE_ENV === 'development' ? 999_999 : undefined,\n log: (message, data, logLevel) => {\n if (message === REQUEST_SENT) {\n debugManager?.log(RESOLVER_EXECUTED, data, logLevel);\n } else if (message === RESPONSE_RECEIVED) {\n debugManager?.log(RESOLVER_RESOLVED, data, logLevel);\n }\n },\n pathTemplateCallback,\n pathTemplateRegExp: /({type})|({subType})|({number})|({seasonNumber})|({episodeNumber})|({id})/g,\n performance,\n queryParams,\n rateLimitPerSecond: 30,\n },\n {\n authenticate: [AUTHENTICATE_PATH, { method: GET_METHOD }],\n certifications: [CERTIFICATIONS_PATH, { method: GET_METHOD }],\n collection: [COLLECTION_PATH, { method: GET_METHOD }],\n company: [COMPANY_PATH, { method: GET_METHOD }],\n configuration: [CONFIGURATION_PATH, { method: GET_METHOD }],\n credit: [CREDIT_PATH, { method: GET_METHOD }],\n discover: [DISCOVER_PATH, { method: GET_METHOD }],\n episode: [EPISODE_PATH, { method: GET_METHOD }],\n find: [FIND_PATH, { method: GET_METHOD }],\n genres: [GENRE_PATH, { method: GET_METHOD }],\n keyword: [KEYWORD_PATH, { method: GET_METHOD }],\n movie: [MOVIE_PATH, { method: GET_METHOD }],\n network: [NETWORK_PATH, { method: GET_METHOD }],\n person: [PERSON_PATH, { method: GET_METHOD }],\n popular: [POPULAR_PATH, { method: GET_METHOD }],\n rated: [RATED_PATH, { method: GET_METHOD }],\n review: [REVIEW_PATH, { method: GET_METHOD }],\n search: [SEARCH_PATH, { method: GET_METHOD }],\n season: [SEASON_PATH, { method: GET_METHOD }],\n trending: [TRENDING_PATH, { method: GET_METHOD }],\n tv: [TV_PATH, { method: GET_METHOD }],\n watchProviders: [WATCH_PROVIDER_PATH, { method: GET_METHOD }],\n }\n );\n"],"names":["BASE_PATH","GET_METHOD","POST_METHOD","PUT_METHOD","DELETE_METHOD","OPTIONAL_TYPE_PATH_TEMPLATE_REGEX","AUTHENTICATE_PATH","CERTIFICATIONS_PATH","COLLECTION_PATH","COMPANY_PATH","CONFIGURATION_PATH","CREDIT_PATH","DISCOVER_PATH","EPISODE_PATH","FIND_PATH","GENRE_PATH","KEYWORD_PATH","MOVIE_PATH","NETWORK_PATH","PERSON_PATH","POPULAR_PATH","RATED_PATH","REVIEW_PATH","SEARCH_PATH","SEASON_PATH","TRENDING_PATH","TV_PATH","WATCH_PROVIDER_PATH","pathTemplateCallback","pathTemplate","data","pathTemplateRegExp","populatedPath","defaultPathTemplateCallback","replace","type","NODE_ENV","process","env","createRestClient","cache","debugManager","queryParams","create","basePath","fetchTimeout","undefined","log","message","logLevel","REQUEST_SENT","RESOLVER_EXECUTED","RESPONSE_RECEIVED","RESOLVER_RESOLVED","performance","rateLimitPerSecond","authenticate","method","certifications","collection","company","configuration","credit","discover","episode","find","genres","keyword","movie","network","person","popular","rated","review","search","season","trending","tv","watchProviders"],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export declare const BASE_PATH = "https://api.themoviedb.org/3/";
|
|
2
|
+
export declare const GET_METHOD: "get";
|
|
3
|
+
export declare const POST_METHOD: "post";
|
|
4
|
+
export declare const PUT_METHOD: "put";
|
|
5
|
+
export declare const DELETE_METHOD: "delete";
|
|
6
|
+
export declare const OPTIONAL_TYPE_PATH_TEMPLATE_REGEX: RegExp;
|
|
7
|
+
export declare const AUTHENTICATE_PATH = "authentication/{type}/new";
|
|
8
|
+
export declare const CERTIFICATIONS_PATH = "certification/{type}/list";
|
|
9
|
+
export declare const COLLECTION_PATH = "collection/{id}/{type?}";
|
|
10
|
+
export declare const COMPANY_PATH = "company/{id}/{type?}";
|
|
11
|
+
export declare const CONFIGURATION_PATH = "configuration/{type?}";
|
|
12
|
+
export declare const CREDIT_PATH = "credit/{id}";
|
|
13
|
+
export declare const DISCOVER_PATH = "discover/{type}";
|
|
14
|
+
export declare const EPISODE_PATH = "tv/{id}/season/{seasonNumber}/episode/{episodeNumber}/{type?}";
|
|
15
|
+
export declare const FIND_PATH = "find/{id}";
|
|
16
|
+
export declare const GENRE_PATH = "genre/{type}/list";
|
|
17
|
+
export declare const KEYWORD_PATH = "keyword/{id}";
|
|
18
|
+
export declare const MOVIE_PATH = "movie/{id}/{type?}";
|
|
19
|
+
export declare const NETWORK_PATH = "network/{id}/{type?}";
|
|
20
|
+
export declare const PERSON_PATH = "person/{id}/{type?}";
|
|
21
|
+
export declare const POPULAR_PATH = "{type}/popular";
|
|
22
|
+
export declare const RATED_PATH = "guest_session/{id}/rated/{type}";
|
|
23
|
+
export declare const REVIEW_PATH = "review/{id}";
|
|
24
|
+
export declare const SEARCH_PATH = "search/{type}";
|
|
25
|
+
export declare const SEASON_PATH = "tv/{id}/season/{number}/{type?}";
|
|
26
|
+
export declare const TRENDING_PATH = "trending/{type}/{subType}";
|
|
27
|
+
export declare const TV_PATH = "tv/{id}/{type?}";
|
|
28
|
+
export declare const WATCH_PROVIDER_PATH = "{type}/{id}/watch/providers";
|
|
29
|
+
//# sourceMappingURL=constants.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.cts","sourceRoot":"","sources":["../../../src/constants.cts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,kCAAkC,CAAC;AAEzD,eAAO,MAAM,UAAU,OAAiB,CAAC;AACzC,eAAO,MAAM,WAAW,QAAkB,CAAC;AAC3C,eAAO,MAAM,UAAU,OAAiB,CAAC;AACzC,eAAO,MAAM,aAAa,UAAoB,CAAC;AAE/C,eAAO,MAAM,iCAAiC,QAAgB,CAAC;AAE/D,eAAO,MAAM,iBAAiB,8BAA8B,CAAC;AAC7D,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAC/D,eAAO,MAAM,eAAe,4BAA4B,CAAC;AACzD,eAAO,MAAM,YAAY,yBAAyB,CAAC;AACnD,eAAO,MAAM,kBAAkB,0BAA0B,CAAC;AAC1D,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,aAAa,oBAAoB,CAAC;AAC/C,eAAO,MAAM,YAAY,kEAAkE,CAAC;AAC5F,eAAO,MAAM,SAAS,cAAc,CAAC;AACrC,eAAO,MAAM,UAAU,sBAAsB,CAAC;AAC9C,eAAO,MAAM,YAAY,iBAAiB,CAAC;AAC3C,eAAO,MAAM,UAAU,uBAAuB,CAAC;AAC/C,eAAO,MAAM,YAAY,yBAAyB,CAAC;AACnD,eAAO,MAAM,WAAW,wBAAwB,CAAC;AACjD,eAAO,MAAM,YAAY,mBAAmB,CAAC;AAC7C,eAAO,MAAM,UAAU,oCAAoC,CAAC;AAC5D,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAC3C,eAAO,MAAM,WAAW,oCAAoC,CAAC;AAC7D,eAAO,MAAM,aAAa,8BAA8B,CAAC;AACzD,eAAO,MAAM,OAAO,oBAAoB,CAAC;AACzC,eAAO,MAAM,mBAAmB,gCAAgC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pathTemplateCallback.d.cts","sourceRoot":"","sources":["../../../../src/helpers/pathTemplateCallback.cts"],"names":[],"mappings":"AAGA,eAAO,MAAM,oBAAoB,iBACjB,MAAM,QACd,OAAO,MAAM,EAAE,MAAM,CAAC,sBACR,MAAM,WAI3B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/index.cts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { CreateRestClientParams, ShortcutMethodNames } from './types.cts';
|
|
2
|
+
export declare const createRestClient: ({ cache, debugManager, queryParams }: CreateRestClientParams) => import("getta").Getta & import("getta").ShortcutProperties<ShortcutMethodNames>;
|
|
3
|
+
//# sourceMappingURL=main.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.cts","sourceRoot":"","sources":["../../../src/main.cts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAI9E,eAAO,MAAM,gBAAgB,yCAA0C,sBAAsB,oFA2C1F,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Core } from '@cachemap/core';
|
|
2
|
+
import type { DebugManagerDef } from '@graphql-box/core';
|
|
3
|
+
import type { JsonObject } from 'type-fest';
|
|
4
|
+
export type ShortcutMethodNames = 'authenticate' | 'certifications' | 'collection' | 'company' | 'configuration' | 'credit' | 'discover' | 'episode' | 'find' | 'genres' | 'keyword' | 'latest' | 'movie' | 'network' | 'person' | 'popular' | 'rated' | 'review' | 'search' | 'season' | 'trending' | 'tv' | 'watchProviders';
|
|
5
|
+
export interface CreateRestClientParams {
|
|
6
|
+
cache?: Core;
|
|
7
|
+
debugManager?: DebugManagerDef;
|
|
8
|
+
queryParams: JsonObject & {
|
|
9
|
+
api_key: string;
|
|
10
|
+
language?: string;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=types.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../../../src/types.cts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,MAAM,mBAAmB,GAC3B,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,SAAS,GACT,eAAe,GACf,QAAQ,GACR,UAAU,GACV,SAAS,GACT,MAAM,GACN,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,SAAS,GACT,QAAQ,GACR,SAAS,GACT,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,IAAI,GACJ,gBAAgB,CAAC;AAErB,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,YAAY,CAAC,EAAE,eAAe,CAAC;IAE/B,WAAW,EAAE,UAAU,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAClE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export declare const BASE_PATH = "https://api.themoviedb.org/3/";
|
|
2
|
+
export declare const GET_METHOD: "get";
|
|
3
|
+
export declare const POST_METHOD: "post";
|
|
4
|
+
export declare const PUT_METHOD: "put";
|
|
5
|
+
export declare const DELETE_METHOD: "delete";
|
|
6
|
+
export declare const OPTIONAL_TYPE_PATH_TEMPLATE_REGEX: RegExp;
|
|
7
|
+
export declare const AUTHENTICATE_PATH = "authentication/{type}/new";
|
|
8
|
+
export declare const CERTIFICATIONS_PATH = "certification/{type}/list";
|
|
9
|
+
export declare const COLLECTION_PATH = "collection/{id}/{type?}";
|
|
10
|
+
export declare const COMPANY_PATH = "company/{id}/{type?}";
|
|
11
|
+
export declare const CONFIGURATION_PATH = "configuration/{type?}";
|
|
12
|
+
export declare const CREDIT_PATH = "credit/{id}";
|
|
13
|
+
export declare const DISCOVER_PATH = "discover/{type}";
|
|
14
|
+
export declare const EPISODE_PATH = "tv/{id}/season/{seasonNumber}/episode/{episodeNumber}/{type?}";
|
|
15
|
+
export declare const FIND_PATH = "find/{id}";
|
|
16
|
+
export declare const GENRE_PATH = "genre/{type}/list";
|
|
17
|
+
export declare const KEYWORD_PATH = "keyword/{id}";
|
|
18
|
+
export declare const MOVIE_PATH = "movie/{id}/{type?}";
|
|
19
|
+
export declare const NETWORK_PATH = "network/{id}/{type?}";
|
|
20
|
+
export declare const PERSON_PATH = "person/{id}/{type?}";
|
|
21
|
+
export declare const POPULAR_PATH = "{type}/popular";
|
|
22
|
+
export declare const RATED_PATH = "guest_session/{id}/rated/{type}";
|
|
23
|
+
export declare const REVIEW_PATH = "review/{id}";
|
|
24
|
+
export declare const SEARCH_PATH = "search/{type}";
|
|
25
|
+
export declare const SEASON_PATH = "tv/{id}/season/{number}/{type?}";
|
|
26
|
+
export declare const TRENDING_PATH = "trending/{type}/{subType}";
|
|
27
|
+
export declare const TV_PATH = "tv/{id}/{type?}";
|
|
28
|
+
export declare const WATCH_PROVIDER_PATH = "{type}/{id}/watch/providers";
|
|
29
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,kCAAkC,CAAC;AAEzD,eAAO,MAAM,UAAU,OAAiB,CAAC;AACzC,eAAO,MAAM,WAAW,QAAkB,CAAC;AAC3C,eAAO,MAAM,UAAU,OAAiB,CAAC;AACzC,eAAO,MAAM,aAAa,UAAoB,CAAC;AAE/C,eAAO,MAAM,iCAAiC,QAAgB,CAAC;AAE/D,eAAO,MAAM,iBAAiB,8BAA8B,CAAC;AAC7D,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAC/D,eAAO,MAAM,eAAe,4BAA4B,CAAC;AACzD,eAAO,MAAM,YAAY,yBAAyB,CAAC;AACnD,eAAO,MAAM,kBAAkB,0BAA0B,CAAC;AAC1D,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,aAAa,oBAAoB,CAAC;AAC/C,eAAO,MAAM,YAAY,kEAAkE,CAAC;AAC5F,eAAO,MAAM,SAAS,cAAc,CAAC;AACrC,eAAO,MAAM,UAAU,sBAAsB,CAAC;AAC9C,eAAO,MAAM,YAAY,iBAAiB,CAAC;AAC3C,eAAO,MAAM,UAAU,uBAAuB,CAAC;AAC/C,eAAO,MAAM,YAAY,yBAAyB,CAAC;AACnD,eAAO,MAAM,WAAW,wBAAwB,CAAC;AACjD,eAAO,MAAM,YAAY,mBAAmB,CAAC;AAC7C,eAAO,MAAM,UAAU,oCAAoC,CAAC;AAC5D,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAC3C,eAAO,MAAM,WAAW,oCAAoC,CAAC;AAC7D,eAAO,MAAM,aAAa,8BAA8B,CAAC;AACzD,eAAO,MAAM,OAAO,oBAAoB,CAAC;AACzC,eAAO,MAAM,mBAAmB,gCAAgC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pathTemplateCallback.d.ts","sourceRoot":"","sources":["../../../../src/helpers/pathTemplateCallback.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,oBAAoB,iBACjB,MAAM,QACd,OAAO,MAAM,EAAE,MAAM,CAAC,sBACR,MAAM,WAI3B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { CreateRestClientParams, ShortcutMethodNames } from './types.ts';
|
|
2
|
+
export declare const createRestClient: ({ cache, debugManager, queryParams }: CreateRestClientParams) => import("getta").Getta & import("getta").ShortcutProperties<ShortcutMethodNames>;
|
|
3
|
+
//# sourceMappingURL=main.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/main.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAI9E,eAAO,MAAM,gBAAgB,yCAA0C,sBAAsB,oFA2C1F,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Core } from '@cachemap/core';
|
|
2
|
+
import type { DebugManagerDef } from '@graphql-box/core';
|
|
3
|
+
import type { JsonObject } from 'type-fest';
|
|
4
|
+
export type ShortcutMethodNames = 'authenticate' | 'certifications' | 'collection' | 'company' | 'configuration' | 'credit' | 'discover' | 'episode' | 'find' | 'genres' | 'keyword' | 'latest' | 'movie' | 'network' | 'person' | 'popular' | 'rated' | 'review' | 'search' | 'season' | 'trending' | 'tv' | 'watchProviders';
|
|
5
|
+
export interface CreateRestClientParams {
|
|
6
|
+
cache?: Core;
|
|
7
|
+
debugManager?: DebugManagerDef;
|
|
8
|
+
queryParams: JsonObject & {
|
|
9
|
+
api_key: string;
|
|
10
|
+
language?: string;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,MAAM,mBAAmB,GAC3B,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,SAAS,GACT,eAAe,GACf,QAAQ,GACR,UAAU,GACV,SAAS,GACT,MAAM,GACN,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,SAAS,GACT,QAAQ,GACR,SAAS,GACT,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,IAAI,GACJ,gBAAgB,CAAC;AAErB,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,YAAY,CAAC,EAAE,eAAe,CAAC;IAE/B,WAAW,EAAE,UAAU,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAClE"}
|