itube-specs 0.0.795 → 0.0.796

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.
Files changed (107) hide show
  1. package/composables/fetch/use-fetch-categories-by-letter.ts +15 -15
  2. package/composables/fetch/use-fetch-categories-by-phrase.ts +18 -18
  3. package/composables/fetch/use-fetch-categories-group-by-letter.ts +13 -13
  4. package/composables/fetch/use-fetch-channels-by-model.ts +18 -18
  5. package/composables/fetch/use-fetch-channels-by-name.ts +15 -15
  6. package/composables/fetch/use-fetch-channels-by-network-name.ts +30 -30
  7. package/composables/fetch/use-fetch-channels.ts +31 -31
  8. package/composables/fetch/use-fetch-dictionaries-countries.ts +13 -13
  9. package/composables/fetch/use-fetch-dictionaries-genders.ts +13 -13
  10. package/composables/fetch/use-fetch-groups-categories-lazy.ts +15 -15
  11. package/composables/fetch/use-fetch-groups-categories.ts +13 -13
  12. package/composables/fetch/use-fetch-model-by-name.ts +15 -15
  13. package/composables/fetch/use-fetch-models-by-category.ts +17 -17
  14. package/composables/fetch/use-fetch-models-by-channel.ts +17 -17
  15. package/composables/fetch/use-fetch-models-by-letter.ts +40 -40
  16. package/composables/fetch/use-fetch-models-by-phrases.ts +32 -32
  17. package/composables/fetch/use-fetch-models-by-tag.ts +1 -1
  18. package/composables/fetch/use-fetch-models-related.ts +24 -24
  19. package/composables/fetch/use-fetch-models.ts +38 -38
  20. package/composables/fetch/use-fetch-multi-suggest.ts +27 -27
  21. package/composables/fetch/use-fetch-playlists-by-id.ts +15 -15
  22. package/composables/fetch/use-fetch-playlists-by-niche.ts +30 -30
  23. package/composables/fetch/use-fetch-playlists-get-videos-by-id.ts +29 -29
  24. package/composables/fetch/use-fetch-related-searches.ts +11 -11
  25. package/composables/fetch/use-fetch-related-videos.ts +27 -27
  26. package/composables/fetch/use-fetch-top-chips-models.ts +15 -15
  27. package/composables/fetch/use-fetch-top-models.ts +19 -19
  28. package/composables/fetch/use-fetch-top-random-categories.ts +13 -13
  29. package/composables/fetch/use-fetch-top-random-full.ts +17 -17
  30. package/composables/fetch/use-fetch-video-referer-phrases.ts +34 -34
  31. package/composables/fetch/use-fetch-videos-by-categories.ts +34 -34
  32. package/composables/fetch/use-fetch-videos-by-channel.ts +34 -34
  33. package/composables/fetch/use-fetch-videos-by-model-and-channel.ts +40 -40
  34. package/composables/fetch/use-fetch-videos-by-model-and-tag.ts +40 -40
  35. package/composables/fetch/use-fetch-videos-by-model.ts +34 -34
  36. package/composables/fetch/use-fetch-videos-by-tag.ts +34 -34
  37. package/composables/fetch/use-fetch-videos-search-by-niche.ts +32 -32
  38. package/composables/use-api-fetcher-no-cache.ts +24 -24
  39. package/composables/use-api-fetcher.ts +19 -19
  40. package/composables/use-get-videos-filter-request.ts +28 -28
  41. package/composables/use-lang.ts +8 -8
  42. package/composables/use-meta.ts +54 -54
  43. package/composables/use-noindex.ts +8 -8
  44. package/composables/use-report-popup.ts +19 -19
  45. package/lib/contact-forms-scheme.ts +92 -92
  46. package/lib/contacts/report-issue-items.ts +3 -3
  47. package/lib/contacts/report-malware-items.ts +4 -4
  48. package/lib/contacts/report-reasons-items.ts +10 -10
  49. package/lib/contacts/report-wrong-items.ts +4 -4
  50. package/lib/report-forms-scheme.ts +259 -259
  51. package/lib/scheme/categories-navigation.ts +8 -8
  52. package/lib/scheme/select-added-items.ts +41 -41
  53. package/lib/scheme/select-duration-items.ts +35 -35
  54. package/nuxt.config.ts +18 -18
  55. package/package.json +1 -1
  56. package/runtime/constants/adverts.ts +5 -5
  57. package/runtime/constants/async-data.ts +57 -57
  58. package/runtime/constants/languages.ts +12 -12
  59. package/runtime/constants/niche.ts +3 -3
  60. package/runtime/constants/playlist-type.ts +2 -2
  61. package/runtime/utils/check-device-width.ts +18 -18
  62. package/runtime/utils/cleaners/clean-mini-category-card.ts +5 -5
  63. package/runtime/utils/cleaners/clean-model-card.ts +20 -20
  64. package/runtime/utils/cleaners/clean-video-data.ts +50 -50
  65. package/runtime/utils/converters/convert-date-to-timestamp.ts +22 -22
  66. package/runtime/utils/converters/convert-query-categories.ts +2 -2
  67. package/runtime/utils/converters/convert-string-array-to-chips.ts +6 -6
  68. package/runtime/utils/converters/convert-string.ts +0 -0
  69. package/runtime/utils/server/age.ts +55 -55
  70. package/runtime/utils/server/api-helper.ts +26 -26
  71. package/runtime/utils/server/get-url-with-proxied-params.ts +3 -3
  72. package/runtime/utils/server/server-api-helper.ts +15 -15
  73. package/runtime/utils/validate-email.ts +2 -2
  74. package/services/api/categories.service.ts +222 -222
  75. package/services/api/dictionaries.service.ts +28 -28
  76. package/services/api/models.service.ts +297 -297
  77. package/types/authorization-forms.d.ts +8 -8
  78. package/types/burger-menu-item.d.ts +5 -5
  79. package/types/change-email-form.d.ts +1 -1
  80. package/types/change-password-form.d.ts +2 -2
  81. package/types/chips-item.d.ts +8 -8
  82. package/types/contacts-scheme.d.ts +9 -9
  83. package/types/country.d.ts +5 -5
  84. package/types/fluid-player.d.ts +176 -176
  85. package/types/gender.d.ts +4 -4
  86. package/types/group-categories.d.ts +10 -10
  87. package/types/info-chips.d.ts +2 -2
  88. package/types/model-card.d.ts +15 -15
  89. package/types/model-filter-payload.d.ts +2 -2
  90. package/types/model-filter.d.ts +10 -10
  91. package/types/model-group.d.ts +4 -4
  92. package/types/model-tag.d.ts +3 -3
  93. package/types/playlist-short.d.ts +2 -2
  94. package/types/playlist-video-form.d.ts +7 -7
  95. package/types/popular-tags.d.ts +2 -2
  96. package/types/raw/raw-playlist-user.d.ts +20 -20
  97. package/types/raw/raw-thumbs-urls.d.ts +2 -2
  98. package/types/raw/raw-video-card.d.ts +70 -70
  99. package/types/raw/raw-video-data.d.ts +50 -50
  100. package/types/recovery-password-form.d.ts +2 -2
  101. package/types/report-request.d.ts +2 -2
  102. package/types/report-scheme.d.ts +18 -18
  103. package/types/request-filters.d.ts +10 -10
  104. package/types/request-pagination.d.ts +2 -2
  105. package/types/search-top-models.d.ts +4 -4
  106. package/types/site.d.ts +15 -15
  107. package/types/thumbs-urls.d.ts +1 -1
@@ -1,239 +1,239 @@
1
1
  import type { Language } from '../../runtime';
2
2
  import { ApiHelper, toHeaderLanguage } from '../../runtime';
3
3
  import type {
4
- IRelatedPhrases,
5
- ICategoryCard,
6
- IGroupCategories,
7
- ICardInfo, IChipsItem,
4
+ IRelatedPhrases,
5
+ ICategoryCard,
6
+ IGroupCategories,
7
+ ICardInfo, IChipsItem,
8
8
  } from '../../types';
9
9
 
10
10
  /** Сервис для работы с API категорий */
11
11
  export class CategoriesApiService {
12
- static async getCategoriesByName(
13
- lang: Language,
14
- name: string,
15
- niche? = NicheHelper.getSiteDefaultNiche(),
16
- ): Promise<ICardInfo> {
17
- return await ApiHelper.fetch(
18
- '/categories/get-categories-by-name',
19
- {
20
- method: 'GET',
21
- headers: {
22
- 'X-Niche': niche,
23
- 'X-Language': toHeaderLanguage(lang),
24
- 'X-Cache-Time': 259200,
25
- 'Content-Type': 'application/json',
26
- },
27
- params: {
28
- name: name,
29
- },
30
- },
31
- useRuntimeConfig(),
32
- );
33
- }
12
+ static async getCategoriesByName(
13
+ lang: Language,
14
+ name: string,
15
+ niche? = NicheHelper.getSiteDefaultNiche(),
16
+ ): Promise<ICardInfo> {
17
+ return await ApiHelper.fetch(
18
+ '/categories/get-categories-by-name',
19
+ {
20
+ method: 'GET',
21
+ headers: {
22
+ 'X-Niche': niche,
23
+ 'X-Language': toHeaderLanguage(lang),
24
+ 'X-Cache-Time': 259200,
25
+ 'Content-Type': 'application/json',
26
+ },
27
+ params: {
28
+ name: name,
29
+ },
30
+ },
31
+ useRuntimeConfig(),
32
+ );
33
+ }
34
34
 
35
- static async getCategoriesByPhrase(
36
- lang: Language,
37
- phrase: string,
38
- phrasesLimit: number,
39
- modelsLimit: number,
40
- categoriesLimit: number,
41
- niche? = NicheHelper.getSiteDefaultNiche(),
42
- ): Promise<Array<ICategoryCard>> {
43
- return await ApiHelper.fetch(
44
- '/categories/get-categories-by-phrase',
45
- {
46
- method: 'GET',
47
- headers: {
48
- 'X-Niche': niche,
49
- 'X-Language': toHeaderLanguage(lang),
50
- 'X-Cache-Time': 259200,
51
- 'Content-Type': 'application/json',
52
- },
53
- params: {
54
- query: phrase,
55
- 'phrases-limit': phrasesLimit,
56
- 'models-limit': modelsLimit,
57
- 'categories-limit': categoriesLimit,
58
- },
59
- },
60
- useRuntimeConfig(),
61
- );
62
- }
35
+ static async getCategoriesByPhrase(
36
+ lang: Language,
37
+ phrase: string,
38
+ phrasesLimit: number,
39
+ modelsLimit: number,
40
+ categoriesLimit: number,
41
+ niche? = NicheHelper.getSiteDefaultNiche(),
42
+ ): Promise<Array<ICategoryCard>> {
43
+ return await ApiHelper.fetch(
44
+ '/categories/get-categories-by-phrase',
45
+ {
46
+ method: 'GET',
47
+ headers: {
48
+ 'X-Niche': niche,
49
+ 'X-Language': toHeaderLanguage(lang),
50
+ 'X-Cache-Time': 259200,
51
+ 'Content-Type': 'application/json',
52
+ },
53
+ params: {
54
+ query: phrase,
55
+ 'phrases-limit': phrasesLimit,
56
+ 'models-limit': modelsLimit,
57
+ 'categories-limit': categoriesLimit,
58
+ },
59
+ },
60
+ useRuntimeConfig(),
61
+ );
62
+ }
63
63
 
64
- static async getTopRandomFooter(
65
- lang: Language,
66
- niche? = NicheHelper.getSiteDefaultNiche(),
67
- limit? = 29, // выводим максимально возможное колличество, из расчета 6 колонок по 5 рядов, и минус 1 это All categories
68
- ): Promise<Array<IChipsItem>> {
69
- return await ApiHelper.fetch(
70
- '/categories/get-top-random-footer',
71
- {
72
- method: 'GET',
73
- headers: {
74
- 'X-Niche': niche,
75
- 'X-Language': toHeaderLanguage(lang),
76
- 'X-Cache-Time': 259200,
77
- 'Content-Type': 'application/json',
78
- },
79
- params: {
80
- limit: limit,
81
- },
82
- },
83
- useRuntimeConfig(),
84
- );
85
- }
64
+ static async getTopRandomFooter(
65
+ lang: Language,
66
+ niche? = NicheHelper.getSiteDefaultNiche(),
67
+ limit? = 29, // выводим максимально возможное колличество, из расчета 6 колонок по 5 рядов, и минус 1 это All categories
68
+ ): Promise<Array<IChipsItem>> {
69
+ return await ApiHelper.fetch(
70
+ '/categories/get-top-random-footer',
71
+ {
72
+ method: 'GET',
73
+ headers: {
74
+ 'X-Niche': niche,
75
+ 'X-Language': toHeaderLanguage(lang),
76
+ 'X-Cache-Time': 259200,
77
+ 'Content-Type': 'application/json',
78
+ },
79
+ params: {
80
+ limit: limit,
81
+ },
82
+ },
83
+ useRuntimeConfig(),
84
+ );
85
+ }
86
86
 
87
- static async getTopRandomFull(
88
- lang: Language,
89
- niche? = NicheHelper.getSiteDefaultNiche(),
90
- limit? = 128,
91
- ): Promise<Array<ICategoryCard>> {
92
- return await ApiHelper.fetch(
93
- '/categories/get-top-random-full',
94
- {
95
- method: 'GET',
96
- headers: {
97
- 'X-Niche': niche,
98
- 'X-Language': toHeaderLanguage(lang),
99
- 'X-Cache-Time': 259200,
100
- 'Content-Type': 'application/json',
101
- },
102
- params: {
103
- limit: limit,
104
- },
105
- },
106
- useRuntimeConfig(),
107
- );
108
- }
87
+ static async getTopRandomFull(
88
+ lang: Language,
89
+ niche? = NicheHelper.getSiteDefaultNiche(),
90
+ limit? = 128,
91
+ ): Promise<Array<ICategoryCard>> {
92
+ return await ApiHelper.fetch(
93
+ '/categories/get-top-random-full',
94
+ {
95
+ method: 'GET',
96
+ headers: {
97
+ 'X-Niche': niche,
98
+ 'X-Language': toHeaderLanguage(lang),
99
+ 'X-Cache-Time': 259200,
100
+ 'Content-Type': 'application/json',
101
+ },
102
+ params: {
103
+ limit: limit,
104
+ },
105
+ },
106
+ useRuntimeConfig(),
107
+ );
108
+ }
109
109
 
110
- static async getRelatedCategories(
111
- lang: Language,
112
- name: string,
113
- niche? = NicheHelper.getSiteDefaultNiche(),
114
- limit? = 50,
115
- ): Promise<IRelatedPhrases> {
116
- return await ApiHelper.fetch(
117
- '/categories/related-phrases-by-name',
118
- {
119
- method: 'GET',
120
- headers: {
121
- 'X-Niche': niche,
122
- 'X-Language': toHeaderLanguage(lang),
123
- 'X-Cache-Time': 259200,
124
- 'Content-Type': 'application/json',
125
- },
126
- params: {
127
- limit: limit,
128
- name: name,
129
- },
130
- },
131
- useRuntimeConfig(),
132
- );
133
- }
110
+ static async getRelatedCategories(
111
+ lang: Language,
112
+ name: string,
113
+ niche? = NicheHelper.getSiteDefaultNiche(),
114
+ limit? = 50,
115
+ ): Promise<IRelatedPhrases> {
116
+ return await ApiHelper.fetch(
117
+ '/categories/related-phrases-by-name',
118
+ {
119
+ method: 'GET',
120
+ headers: {
121
+ 'X-Niche': niche,
122
+ 'X-Language': toHeaderLanguage(lang),
123
+ 'X-Cache-Time': 259200,
124
+ 'Content-Type': 'application/json',
125
+ },
126
+ params: {
127
+ limit: limit,
128
+ name: name,
129
+ },
130
+ },
131
+ useRuntimeConfig(),
132
+ );
133
+ }
134
134
 
135
- static async getTopRandom(
136
- lang: Language,
137
- cacheId = 'default',
138
- niche? = NicheHelper.getSiteDefaultNiche(),
139
- limit? = 20,
140
- ): Promise<Array<IChipsItem>> {
141
- return await ApiHelper.fetch(
142
- '/categories/get-top-random',
143
- {
144
- method: 'GET',
145
- headers: {
146
- 'X-Niche': niche,
147
- 'X-Cache-Extra': cacheId,
148
- 'X-Language': toHeaderLanguage(lang),
149
- 'X-Cache-Time': 604800,
150
- 'Content-Type': 'application/json',
151
- },
152
- params: {
153
- limit: limit,
154
- },
155
- },
156
- useRuntimeConfig(),
157
- );
158
- }
135
+ static async getTopRandom(
136
+ lang: Language,
137
+ cacheId = 'default',
138
+ niche? = NicheHelper.getSiteDefaultNiche(),
139
+ limit? = 20,
140
+ ): Promise<Array<IChipsItem>> {
141
+ return await ApiHelper.fetch(
142
+ '/categories/get-top-random',
143
+ {
144
+ method: 'GET',
145
+ headers: {
146
+ 'X-Niche': niche,
147
+ 'X-Cache-Extra': cacheId,
148
+ 'X-Language': toHeaderLanguage(lang),
149
+ 'X-Cache-Time': 604800,
150
+ 'Content-Type': 'application/json',
151
+ },
152
+ params: {
153
+ limit: limit,
154
+ },
155
+ },
156
+ useRuntimeConfig(),
157
+ );
158
+ }
159
159
 
160
- static async getListGroupedByLetter(
161
- lang: Language,
162
- niche? = NicheHelper.getSiteDefaultNiche(),
163
- ): Promise<Record<string, Array<ICategoryCard>>> {
164
- return await ApiHelper.fetch(
165
- '/categories/list-grouped-by-letter',
166
- {
167
- method: 'GET',
168
- headers: {
169
- 'X-Niche': niche,
170
- 'X-Language': toHeaderLanguage(lang),
171
- 'X-Cache-Time': 259200,
172
- 'Content-Type': 'application/json',
173
- },
174
- },
175
- useRuntimeConfig(),
176
- );
177
- }
160
+ static async getListGroupedByLetter(
161
+ lang: Language,
162
+ niche? = NicheHelper.getSiteDefaultNiche(),
163
+ ): Promise<Record<string, Array<ICategoryCard>>> {
164
+ return await ApiHelper.fetch(
165
+ '/categories/list-grouped-by-letter',
166
+ {
167
+ method: 'GET',
168
+ headers: {
169
+ 'X-Niche': niche,
170
+ 'X-Language': toHeaderLanguage(lang),
171
+ 'X-Cache-Time': 259200,
172
+ 'Content-Type': 'application/json',
173
+ },
174
+ },
175
+ useRuntimeConfig(),
176
+ );
177
+ }
178
178
 
179
- static async getListGroupedByLetterChips(
180
- lang: Language,
181
- niche? = NicheHelper.getSiteDefaultNiche(),
182
- ): Promise<Record<string, Array<ICategoryCard>>> {
183
- return await ApiHelper.fetch(
184
- '/categories/list-grouped-by-letter-chips',
185
- {
186
- method: 'GET',
187
- headers: {
188
- 'X-Niche': niche,
189
- 'X-Language': toHeaderLanguage(lang),
190
- 'X-Cache-Time': 259200,
191
- 'Content-Type': 'application/json',
192
- },
193
- },
194
- useRuntimeConfig(),
195
- );
196
- }
179
+ static async getListGroupedByLetterChips(
180
+ lang: Language,
181
+ niche? = NicheHelper.getSiteDefaultNiche(),
182
+ ): Promise<Record<string, Array<ICategoryCard>>> {
183
+ return await ApiHelper.fetch(
184
+ '/categories/list-grouped-by-letter-chips',
185
+ {
186
+ method: 'GET',
187
+ headers: {
188
+ 'X-Niche': niche,
189
+ 'X-Language': toHeaderLanguage(lang),
190
+ 'X-Cache-Time': 259200,
191
+ 'Content-Type': 'application/json',
192
+ },
193
+ },
194
+ useRuntimeConfig(),
195
+ );
196
+ }
197
197
 
198
- static async getCategoriesByLetter(
199
- lang: Language,
200
- letter: string,
201
- niche? = NicheHelper.getSiteDefaultNiche(),
202
- ): Promise<Array<ICategoryCard>> {
203
- return await ApiHelper.fetch(
204
- '/categories/list-by-letter',
205
- {
206
- method: 'POST',
207
- headers: {
208
- 'X-Niche': niche,
209
- 'X-Language': toHeaderLanguage(lang),
210
- 'X-Cache-Time': 259200,
211
- 'Content-Type': 'application/json',
212
- },
213
- params: {
214
- letter,
215
- },
216
- },
217
- useRuntimeConfig(),
218
- );
219
- }
198
+ static async getCategoriesByLetter(
199
+ lang: Language,
200
+ letter: string,
201
+ niche? = NicheHelper.getSiteDefaultNiche(),
202
+ ): Promise<Array<ICategoryCard>> {
203
+ return await ApiHelper.fetch(
204
+ '/categories/list-by-letter',
205
+ {
206
+ method: 'POST',
207
+ headers: {
208
+ 'X-Niche': niche,
209
+ 'X-Language': toHeaderLanguage(lang),
210
+ 'X-Cache-Time': 259200,
211
+ 'Content-Type': 'application/json',
212
+ },
213
+ params: {
214
+ letter,
215
+ },
216
+ },
217
+ useRuntimeConfig(),
218
+ );
219
+ }
220
220
 
221
- static async getGroupsCategories(
222
- lang: Language,
223
- niche? = NicheHelper.getSiteDefaultNiche(),
224
- ): Promise<IGroupCategories[]> {
225
- return await ApiHelper.fetch(
226
- '/categories/group-categories',
227
- {
228
- method: 'GET',
229
- headers: {
230
- 'X-Niche': niche,
231
- 'X-Language': toHeaderLanguage(lang),
232
- 'X-Cache-Time': 259200,
233
- 'Content-Type': 'application/json',
234
- },
235
- },
236
- useRuntimeConfig(),
237
- );
238
- }
221
+ static async getGroupsCategories(
222
+ lang: Language,
223
+ niche? = NicheHelper.getSiteDefaultNiche(),
224
+ ): Promise<IGroupCategories[]> {
225
+ return await ApiHelper.fetch(
226
+ '/categories/group-categories',
227
+ {
228
+ method: 'GET',
229
+ headers: {
230
+ 'X-Niche': niche,
231
+ 'X-Language': toHeaderLanguage(lang),
232
+ 'X-Cache-Time': 259200,
233
+ 'Content-Type': 'application/json',
234
+ },
235
+ },
236
+ useRuntimeConfig(),
237
+ );
238
+ }
239
239
  }
@@ -3,32 +3,32 @@ import { ApiHelper } from '../../runtime';
3
3
 
4
4
  /** Сервис для работы с API справочников (страны, гендеры) */
5
5
  export class DictionariesApiService {
6
- static async getCountries(): Promise<ICountries> {
7
- return await ApiHelper.fetch(
8
- '/dictionaries/countries',
9
- {
10
- method: 'GET',
11
- headers: {
12
- 'X-Cache-Time': 259200,
13
- 'Content-Type': 'application/json',
14
- 'Access-Control-Allow-Origin': '*',
15
- },
16
- },
17
- useRuntimeConfig(),
18
- );
19
- }
20
- static async getGenders(): Promise<IGenders> {
21
- return await ApiHelper.fetch(
22
- '/dictionaries/genders',
23
- {
24
- method: 'GET',
25
- headers: {
26
- 'X-Cache-Time': 259200,
27
- 'Content-Type': 'application/json',
28
- 'Access-Control-Allow-Origin': '*',
29
- },
30
- },
31
- useRuntimeConfig(),
32
- );
33
- }
6
+ static async getCountries(): Promise<ICountries> {
7
+ return await ApiHelper.fetch(
8
+ '/dictionaries/countries',
9
+ {
10
+ method: 'GET',
11
+ headers: {
12
+ 'X-Cache-Time': 259200,
13
+ 'Content-Type': 'application/json',
14
+ 'Access-Control-Allow-Origin': '*',
15
+ },
16
+ },
17
+ useRuntimeConfig(),
18
+ );
19
+ }
20
+ static async getGenders(): Promise<IGenders> {
21
+ return await ApiHelper.fetch(
22
+ '/dictionaries/genders',
23
+ {
24
+ method: 'GET',
25
+ headers: {
26
+ 'X-Cache-Time': 259200,
27
+ 'Content-Type': 'application/json',
28
+ 'Access-Control-Allow-Origin': '*',
29
+ },
30
+ },
31
+ useRuntimeConfig(),
32
+ );
33
+ }
34
34
  }