katanakit-js 4.0.4 → 5.2.0

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 (130) hide show
  1. package/README.md +184 -10
  2. package/dist/adapters/insforge/index.d.ts +3 -0
  3. package/dist/adapters/insforge/index.d.ts.map +1 -0
  4. package/dist/adapters/insforge/index.js +2 -0
  5. package/dist/adapters/insforge/index.js.map +1 -0
  6. package/dist/adapters/insforge/insforge.service.d.ts +116 -0
  7. package/dist/adapters/insforge/insforge.service.d.ts.map +1 -0
  8. package/dist/adapters/insforge/insforge.service.js +437 -0
  9. package/dist/adapters/insforge/insforge.service.js.map +1 -0
  10. package/dist/adapters/notion/notion.service.d.ts.map +1 -1
  11. package/dist/adapters/notion/notion.service.js +72 -54
  12. package/dist/adapters/notion/notion.service.js.map +1 -1
  13. package/dist/adapters/wordpress/wordpress.service.d.ts.map +1 -1
  14. package/dist/adapters/wordpress/wordpress.service.js +163 -85
  15. package/dist/adapters/wordpress/wordpress.service.js.map +1 -1
  16. package/dist/config/seo.service.d.ts.map +1 -1
  17. package/dist/config/seo.service.js +42 -4
  18. package/dist/config/seo.service.js.map +1 -1
  19. package/dist/core/index.d.ts +5 -0
  20. package/dist/core/index.d.ts.map +1 -1
  21. package/dist/core/index.js +5 -0
  22. package/dist/core/index.js.map +1 -1
  23. package/dist/core/services/error.service.d.ts +21 -1
  24. package/dist/core/services/error.service.d.ts.map +1 -1
  25. package/dist/core/services/error.service.js +39 -0
  26. package/dist/core/services/error.service.js.map +1 -1
  27. package/dist/core/services/faker.service.d.ts +160 -0
  28. package/dist/core/services/faker.service.d.ts.map +1 -0
  29. package/dist/core/services/faker.service.js +235 -0
  30. package/dist/core/services/faker.service.js.map +1 -0
  31. package/dist/core/services/http.service.d.ts.map +1 -1
  32. package/dist/core/services/http.service.js +10 -16
  33. package/dist/core/services/http.service.js.map +1 -1
  34. package/dist/core/services/media.service.d.ts +97 -0
  35. package/dist/core/services/media.service.d.ts.map +1 -0
  36. package/dist/core/services/media.service.js +239 -0
  37. package/dist/core/services/media.service.js.map +1 -0
  38. package/dist/core/services/reactive.service.d.ts.map +1 -1
  39. package/dist/core/services/reactive.service.js +5 -14
  40. package/dist/core/services/reactive.service.js.map +1 -1
  41. package/dist/core/services/result.service.d.ts +41 -0
  42. package/dist/core/services/result.service.d.ts.map +1 -0
  43. package/dist/core/services/result.service.js +60 -0
  44. package/dist/core/services/result.service.js.map +1 -0
  45. package/dist/core/services/validation.service.d.ts +22 -0
  46. package/dist/core/services/validation.service.d.ts.map +1 -0
  47. package/dist/core/services/validation.service.js +41 -0
  48. package/dist/core/services/validation.service.js.map +1 -0
  49. package/dist/core/services/youtube.service.d.ts +79 -0
  50. package/dist/core/services/youtube.service.d.ts.map +1 -0
  51. package/dist/core/services/youtube.service.js +388 -0
  52. package/dist/core/services/youtube.service.js.map +1 -0
  53. package/dist/index.d.ts +1 -0
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +1 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/infrastructure/filesystem/filesystem.service.d.ts +267 -0
  58. package/dist/infrastructure/filesystem/filesystem.service.d.ts.map +1 -0
  59. package/dist/infrastructure/filesystem/filesystem.service.js +453 -0
  60. package/dist/infrastructure/filesystem/filesystem.service.js.map +1 -0
  61. package/dist/infrastructure/filesystem/path.service.d.ts +115 -0
  62. package/dist/infrastructure/filesystem/path.service.d.ts.map +1 -0
  63. package/dist/infrastructure/filesystem/path.service.js +154 -0
  64. package/dist/infrastructure/filesystem/path.service.js.map +1 -0
  65. package/dist/infrastructure/index.d.ts +3 -0
  66. package/dist/infrastructure/index.d.ts.map +1 -1
  67. package/dist/infrastructure/index.js +3 -0
  68. package/dist/infrastructure/index.js.map +1 -1
  69. package/dist/infrastructure/media/media.service.d.ts +15 -0
  70. package/dist/infrastructure/media/media.service.d.ts.map +1 -0
  71. package/dist/infrastructure/media/media.service.js +44 -0
  72. package/dist/infrastructure/media/media.service.js.map +1 -0
  73. package/dist/infrastructure/storage/storage.service.d.ts.map +1 -1
  74. package/dist/infrastructure/storage/storage.service.js +10 -8
  75. package/dist/infrastructure/storage/storage.service.js.map +1 -1
  76. package/dist/schemas/access.schema.d.ts +69 -0
  77. package/dist/schemas/access.schema.d.ts.map +1 -0
  78. package/dist/schemas/access.schema.js +36 -0
  79. package/dist/schemas/access.schema.js.map +1 -0
  80. package/dist/schemas/ai.schema.d.ts +53 -0
  81. package/dist/schemas/ai.schema.d.ts.map +1 -0
  82. package/dist/schemas/ai.schema.js +34 -0
  83. package/dist/schemas/ai.schema.js.map +1 -0
  84. package/dist/schemas/common.schema.d.ts +49 -0
  85. package/dist/schemas/common.schema.d.ts.map +1 -0
  86. package/dist/schemas/common.schema.js +23 -0
  87. package/dist/schemas/common.schema.js.map +1 -0
  88. package/dist/schemas/core.schema.d.ts +164 -0
  89. package/dist/schemas/core.schema.d.ts.map +1 -0
  90. package/dist/schemas/core.schema.js +109 -0
  91. package/dist/schemas/core.schema.js.map +1 -0
  92. package/dist/schemas/faker.schema.d.ts +12 -0
  93. package/dist/schemas/faker.schema.d.ts.map +1 -0
  94. package/dist/schemas/faker.schema.js +12 -0
  95. package/dist/schemas/faker.schema.js.map +1 -0
  96. package/dist/schemas/filesystem.schema.d.ts +71 -0
  97. package/dist/schemas/filesystem.schema.d.ts.map +1 -0
  98. package/dist/schemas/filesystem.schema.js +56 -0
  99. package/dist/schemas/filesystem.schema.js.map +1 -0
  100. package/dist/schemas/index.d.ts +13 -0
  101. package/dist/schemas/index.d.ts.map +1 -0
  102. package/dist/schemas/index.js +13 -0
  103. package/dist/schemas/index.js.map +1 -0
  104. package/dist/schemas/insforge.schema.d.ts +69 -0
  105. package/dist/schemas/insforge.schema.d.ts.map +1 -0
  106. package/dist/schemas/insforge.schema.js +82 -0
  107. package/dist/schemas/insforge.schema.js.map +1 -0
  108. package/dist/schemas/media.schema.d.ts +51 -0
  109. package/dist/schemas/media.schema.d.ts.map +1 -0
  110. package/dist/schemas/media.schema.js +50 -0
  111. package/dist/schemas/media.schema.js.map +1 -0
  112. package/dist/schemas/notion.schema.d.ts +1058 -0
  113. package/dist/schemas/notion.schema.d.ts.map +1 -0
  114. package/dist/schemas/notion.schema.js +248 -0
  115. package/dist/schemas/notion.schema.js.map +1 -0
  116. package/dist/schemas/rss.schema.d.ts +35 -0
  117. package/dist/schemas/rss.schema.d.ts.map +1 -0
  118. package/dist/schemas/rss.schema.js +44 -0
  119. package/dist/schemas/rss.schema.js.map +1 -0
  120. package/dist/schemas/wordpress.schema.d.ts +1304 -0
  121. package/dist/schemas/wordpress.schema.d.ts.map +1 -0
  122. package/dist/schemas/wordpress.schema.js +404 -0
  123. package/dist/schemas/wordpress.schema.js.map +1 -0
  124. package/dist/schemas/youtube.schema.d.ts +122 -0
  125. package/dist/schemas/youtube.schema.d.ts.map +1 -0
  126. package/dist/schemas/youtube.schema.js +113 -0
  127. package/dist/schemas/youtube.schema.js.map +1 -0
  128. package/dist/types/index.d.ts +191 -800
  129. package/dist/types/index.d.ts.map +1 -1
  130. package/package.json +40 -15
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordpress.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/wordpress.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,404 @@
1
+ import { z } from "zod";
2
+ /** Authentication methods for WordPress. */
3
+ export const WordPressAuthSchema = z.discriminatedUnion("type", [
4
+ z.object({
5
+ type: z.literal("application-passwords"),
6
+ username: z.string(),
7
+ password: z.string(),
8
+ }),
9
+ z.object({
10
+ type: z.literal("jwt"),
11
+ token: z.string(),
12
+ }),
13
+ z.object({
14
+ type: z.literal("basic"),
15
+ username: z.string(),
16
+ password: z.string(),
17
+ }),
18
+ z.object({
19
+ type: z.literal("nonce"),
20
+ nonce: z.string(),
21
+ cookie: z.string(),
22
+ }),
23
+ ]);
24
+ /** Configuration for the WordPress REST API integration. */
25
+ export const WordPressConfigSchema = z.object({
26
+ baseUrl: z.string(),
27
+ auth: WordPressAuthSchema.optional(),
28
+ apiNamespace: z.string().optional(),
29
+ });
30
+ /** Base fields shared by all WordPress entities. */
31
+ export const WpBaseEntitySchema = z.looseObject({
32
+ id: z.number(),
33
+ date: z.string(),
34
+ date_gmt: z.string(),
35
+ modified: z.string(),
36
+ modified_gmt: z.string(),
37
+ slug: z.string(),
38
+ status: z.string(),
39
+ link: z.string(),
40
+ });
41
+ /** Container for ACF (Advanced Custom Fields) fields. */
42
+ export const WpAcfFieldsSchema = z.record(z.string(), z.unknown());
43
+ /** Metadata for a media upload. */
44
+ export const WpMediaMetaSchema = z.object({
45
+ title: z.string().optional(),
46
+ alt_text: z.string().optional(),
47
+ caption: z.string().optional(),
48
+ description: z.string().optional(),
49
+ post: z.number().optional(),
50
+ slug: z.string().optional(),
51
+ });
52
+ /** Image metadata from EXIF data (all optional, preserves extra keys). */
53
+ const WpMediaImageMetaSchema = z
54
+ .looseObject({
55
+ aperture: z.string().optional(),
56
+ credit: z.string().optional(),
57
+ camera: z.string().optional(),
58
+ caption: z.string().optional(),
59
+ created_timestamp: z.string().optional(),
60
+ copyright: z.string().optional(),
61
+ focal_length: z.string().optional(),
62
+ iso: z.string().optional(),
63
+ orientation: z.string().optional(),
64
+ shutter_speed: z.string().optional(),
65
+ title: z.string().optional(),
66
+ })
67
+ .catchall(z.unknown());
68
+ /** Single registered image size. */
69
+ const WpMediaSizeSchema = z.looseObject({
70
+ source_url: z.string(),
71
+ file: z.string(),
72
+ width: z.number(),
73
+ height: z.number(),
74
+ mime_type: z.string(),
75
+ filesize: z.number().optional(),
76
+ });
77
+ /** File and image details of a media item (all optional). */
78
+ const WpMediaDetailsSchema = z.looseObject({
79
+ width: z.number().optional(),
80
+ height: z.number().optional(),
81
+ file: z.string().optional(),
82
+ filesize: z.number().optional(),
83
+ image_meta: WpMediaImageMetaSchema.optional(),
84
+ sizes: z.record(z.string(), WpMediaSizeSchema).optional(),
85
+ });
86
+ /** A WordPress media item (attachment). */
87
+ export const WpMediaSchema = WpBaseEntitySchema.extend({
88
+ title: z.looseObject({ rendered: z.string() }),
89
+ author: z.number(),
90
+ media_type: z.string(),
91
+ mime_type: z.string(),
92
+ media_details: WpMediaDetailsSchema,
93
+ source_url: z.string(),
94
+ alt_text: z.string(),
95
+ caption: z.looseObject({ rendered: z.string() }),
96
+ description: z.looseObject({ rendered: z.string() }),
97
+ post: z.number().nullable(),
98
+ meta: z.record(z.string(), z.unknown()),
99
+ acf: WpAcfFieldsSchema.optional(),
100
+ _embedded: z.lazy(() => WpEmbeddedSchema).optional(),
101
+ });
102
+ /** Payload for updating a WordPress media item. */
103
+ export const WpMediaUpdateSchema = WpMediaMetaSchema.partial().extend({
104
+ status: z.string().optional(),
105
+ });
106
+ /** Media response variant (partials via `_fields` stay well-typed). */
107
+ export const WpMediaResponseSchema = WpMediaSchema.partial();
108
+ /** List of media items. */
109
+ export const WpMediaListSchema = z.array(WpMediaResponseSchema);
110
+ /** Embedded resources returned when `_embed` is used. */
111
+ export const WpEmbeddedSchema = z
112
+ .object({
113
+ author: z
114
+ .array(z
115
+ .looseObject({
116
+ id: z.number(),
117
+ name: z.string(),
118
+ url: z.string(),
119
+ description: z.string(),
120
+ link: z.string(),
121
+ slug: z.string(),
122
+ avatar_urls: z.record(z.string(), z.string()),
123
+ acf: WpAcfFieldsSchema.optional(),
124
+ })
125
+ .catchall(z.unknown()))
126
+ .optional(),
127
+ // Kept self-contained (no `WpMediaSchema` reference) to break the
128
+ // runtime schema cycle: embedded media never nests `_embedded`.
129
+ "wp:featuredmedia": z
130
+ .array(WpBaseEntitySchema.extend({
131
+ title: z.looseObject({ rendered: z.string() }),
132
+ source_url: z.string(),
133
+ alt_text: z.string(),
134
+ })
135
+ .partial()
136
+ .catchall(z.unknown()))
137
+ .optional(),
138
+ "wp:term": z
139
+ .array(z.array(z
140
+ .looseObject({
141
+ id: z.number(),
142
+ name: z.string(),
143
+ slug: z.string(),
144
+ _taxonomy: z.string(),
145
+ link: z.string(),
146
+ count: z.number().optional(),
147
+ })
148
+ .catchall(z.unknown())))
149
+ .optional(),
150
+ replies: z
151
+ .array(z.array(z
152
+ .looseObject({
153
+ id: z.number(),
154
+ parent: z.number(),
155
+ author: z.number(),
156
+ author_name: z.string(),
157
+ content: z.looseObject({ rendered: z.string() }),
158
+ date: z.string(),
159
+ })
160
+ .catchall(z.unknown())))
161
+ .optional(),
162
+ })
163
+ .catchall(z.unknown());
164
+ /** A WordPress post. */
165
+ export const WpPostSchema = WpBaseEntitySchema.extend({
166
+ title: z.looseObject({ rendered: z.string() }),
167
+ content: z.looseObject({ rendered: z.string(), protected: z.boolean() }),
168
+ excerpt: z.looseObject({ rendered: z.string(), protected: z.boolean() }),
169
+ author: z.number(),
170
+ featured_media: z.number(),
171
+ comment_status: z.string(),
172
+ ping_status: z.string(),
173
+ sticky: z.boolean(),
174
+ template: z.string(),
175
+ format: z.string(),
176
+ categories: z.array(z.number()),
177
+ tags: z.array(z.number()),
178
+ meta: z.record(z.string(), z.unknown()),
179
+ acf: WpAcfFieldsSchema.optional(),
180
+ _embedded: WpEmbeddedSchema.optional(),
181
+ });
182
+ /** Payload for creating a WordPress post. */
183
+ export const WpPostCreateSchema = z.object({
184
+ title: z.string(),
185
+ content: z.string().optional(),
186
+ excerpt: z.string().optional(),
187
+ author: z.number().optional(),
188
+ featured_media: z.number().optional(),
189
+ comment_status: z.enum(["open", "closed"]).optional(),
190
+ ping_status: z.enum(["open", "closed"]).optional(),
191
+ sticky: z.boolean().optional(),
192
+ format: z.string().optional(),
193
+ categories: z.array(z.number()).optional(),
194
+ tags: z.array(z.number()).optional(),
195
+ meta: z.record(z.string(), z.unknown()).optional(),
196
+ status: z.enum(["publish", "future", "draft", "pending", "private"]).optional(),
197
+ slug: z.string().optional(),
198
+ date: z.string().optional(),
199
+ template: z.string().optional(),
200
+ });
201
+ /** Payload for updating a WordPress post. */
202
+ export const WpPostUpdateSchema = WpPostCreateSchema.partial();
203
+ /** Post response variant (partials via `_fields` stay well-typed). */
204
+ export const WpPostResponseSchema = WpPostSchema.partial();
205
+ /** List of posts. */
206
+ export const WpPostListSchema = z.array(WpPostResponseSchema);
207
+ /** A WordPress page. */
208
+ export const WpPageSchema = WpBaseEntitySchema.extend({
209
+ title: z.looseObject({ rendered: z.string() }),
210
+ content: z.looseObject({ rendered: z.string(), protected: z.boolean() }),
211
+ excerpt: z.looseObject({ rendered: z.string(), protected: z.boolean() }),
212
+ author: z.number(),
213
+ featured_media: z.number(),
214
+ parent: z.number(),
215
+ menu_order: z.number(),
216
+ comment_status: z.string(),
217
+ ping_status: z.string(),
218
+ template: z.string(),
219
+ meta: z.record(z.string(), z.unknown()),
220
+ acf: WpAcfFieldsSchema.optional(),
221
+ _embedded: WpEmbeddedSchema.optional(),
222
+ });
223
+ /** Payload for creating a WordPress page. */
224
+ export const WpPageCreateSchema = z.object({
225
+ title: z.string(),
226
+ content: z.string().optional(),
227
+ excerpt: z.string().optional(),
228
+ author: z.number().optional(),
229
+ featured_media: z.number().optional(),
230
+ parent: z.number().optional(),
231
+ menu_order: z.number().optional(),
232
+ comment_status: z.enum(["open", "closed"]).optional(),
233
+ ping_status: z.enum(["open", "closed"]).optional(),
234
+ status: z.enum(["publish", "future", "draft", "pending", "private"]).optional(),
235
+ slug: z.string().optional(),
236
+ date: z.string().optional(),
237
+ template: z.string().optional(),
238
+ meta: z.record(z.string(), z.unknown()).optional(),
239
+ });
240
+ /** Payload for updating a WordPress page. */
241
+ export const WpPageUpdateSchema = WpPageCreateSchema.partial();
242
+ /** Page response variant (partials via `_fields` stay well-typed). */
243
+ export const WpPageResponseSchema = WpPageSchema.partial();
244
+ /** List of pages. */
245
+ export const WpPageListSchema = z.array(WpPageResponseSchema);
246
+ /** A WordPress category. */
247
+ export const WpCategorySchema = z.looseObject({
248
+ id: z.number(),
249
+ count: z.number(),
250
+ description: z.string(),
251
+ link: z.string(),
252
+ name: z.string(),
253
+ slug: z.string(),
254
+ parent: z.number(),
255
+ meta: z.record(z.string(), z.unknown()),
256
+ });
257
+ /** Payload for creating a WordPress category. */
258
+ export const WpCategoryCreateSchema = z.object({
259
+ name: z.string(),
260
+ description: z.string().optional(),
261
+ slug: z.string().optional(),
262
+ parent: z.number().optional(),
263
+ meta: z.record(z.string(), z.unknown()).optional(),
264
+ });
265
+ /** Payload for updating a WordPress category. */
266
+ export const WpCategoryUpdateSchema = WpCategoryCreateSchema.partial();
267
+ /** Category response variant (partials via `_fields` stay well-typed). */
268
+ export const WpCategoryResponseSchema = WpCategorySchema.partial();
269
+ /** List of categories. */
270
+ export const WpCategoryListSchema = z.array(WpCategoryResponseSchema);
271
+ /** A WordPress tag. */
272
+ export const WpTagSchema = z.looseObject({
273
+ id: z.number(),
274
+ count: z.number(),
275
+ description: z.string(),
276
+ link: z.string(),
277
+ name: z.string(),
278
+ slug: z.string(),
279
+ meta: z.record(z.string(), z.unknown()),
280
+ });
281
+ /** Payload for creating a WordPress tag. */
282
+ export const WpTagCreateSchema = z.object({
283
+ name: z.string(),
284
+ description: z.string().optional(),
285
+ slug: z.string().optional(),
286
+ meta: z.record(z.string(), z.unknown()).optional(),
287
+ });
288
+ /** Payload for updating a WordPress tag. */
289
+ export const WpTagUpdateSchema = WpTagCreateSchema.partial();
290
+ /** Tag response variant (partials via `_fields` stay well-typed). */
291
+ export const WpTagResponseSchema = WpTagSchema.partial();
292
+ /** List of tags. */
293
+ export const WpTagListSchema = z.array(WpTagResponseSchema);
294
+ /** A WordPress comment. */
295
+ export const WpCommentSchema = z.looseObject({
296
+ id: z.number(),
297
+ post: z.number(),
298
+ parent: z.number(),
299
+ author: z.number(),
300
+ author_name: z.string(),
301
+ author_email: z.string(),
302
+ author_url: z.string(),
303
+ date: z.string(),
304
+ date_gmt: z.string(),
305
+ content: z.looseObject({ rendered: z.string() }),
306
+ link: z.string(),
307
+ status: z.string(),
308
+ type: z.string(),
309
+ author_avatar_urls: z.record(z.string(), z.string()),
310
+ meta: z.record(z.string(), z.unknown()),
311
+ });
312
+ /** Payload for creating a WordPress comment. */
313
+ export const WpCommentCreateSchema = z.object({
314
+ post: z.number(),
315
+ parent: z.number().optional(),
316
+ content: z.string(),
317
+ author: z.number().optional(),
318
+ author_name: z.string().optional(),
319
+ author_email: z.string().optional(),
320
+ author_url: z.string().optional(),
321
+ status: z.string().optional(),
322
+ meta: z.record(z.string(), z.unknown()).optional(),
323
+ });
324
+ /** Payload for updating a WordPress comment. */
325
+ export const WpCommentUpdateSchema = WpCommentCreateSchema.partial();
326
+ /** Comment response variant (partials via `_fields` stay well-typed). */
327
+ export const WpCommentResponseSchema = WpCommentSchema.partial();
328
+ /** List of comments. */
329
+ export const WpCommentListSchema = z.array(WpCommentResponseSchema);
330
+ /** A WordPress user. */
331
+ export const WpUserSchema = z.looseObject({
332
+ id: z.number(),
333
+ username: z.string(),
334
+ name: z.string(),
335
+ first_name: z.string(),
336
+ last_name: z.string(),
337
+ email: z.string(),
338
+ url: z.string(),
339
+ description: z.string(),
340
+ link: z.string(),
341
+ locale: z.string(),
342
+ nickname: z.string(),
343
+ slug: z.string(),
344
+ roles: z.array(z.string()),
345
+ avatar_urls: z.record(z.string(), z.string()),
346
+ meta: z.record(z.string(), z.unknown()),
347
+ });
348
+ /** Payload for creating a WordPress user. */
349
+ export const WpUserCreateSchema = z.object({
350
+ username: z.string(),
351
+ name: z.string().optional(),
352
+ first_name: z.string().optional(),
353
+ last_name: z.string().optional(),
354
+ email: z.string(),
355
+ url: z.string().optional(),
356
+ description: z.string().optional(),
357
+ locale: z.string().optional(),
358
+ nickname: z.string().optional(),
359
+ slug: z.string().optional(),
360
+ roles: z.array(z.string()).optional(),
361
+ password: z.string().optional(),
362
+ meta: z.record(z.string(), z.unknown()).optional(),
363
+ });
364
+ /** Payload for updating a WordPress user. */
365
+ export const WpUserUpdateSchema = WpUserCreateSchema.partial();
366
+ /** User response variant (partials via `_fields` stay well-typed). */
367
+ export const WpUserResponseSchema = WpUserSchema.partial();
368
+ /** List of users. */
369
+ export const WpUserListSchema = z.array(WpUserResponseSchema);
370
+ /** Common query parameters for WordPress REST API list endpoints. */
371
+ export const WpQueryParamsSchema = z
372
+ .object({
373
+ page: z.number().optional(),
374
+ per_page: z.number().optional(),
375
+ search: z.string().optional(),
376
+ order: z.enum(["asc", "desc"]).optional(),
377
+ orderby: z.string().optional(),
378
+ offset: z.number().optional(),
379
+ include: z.array(z.number()).optional(),
380
+ exclude: z.array(z.number()).optional(),
381
+ slug: z.string().optional(),
382
+ status: z.union([z.string(), z.array(z.string())]).optional(),
383
+ author: z.union([z.number(), z.array(z.number())]).optional(),
384
+ categories: z.union([z.number(), z.array(z.number())]).optional(),
385
+ tags: z.union([z.number(), z.array(z.number())]).optional(),
386
+ _fields: z.string().optional(),
387
+ _embed: z.union([z.boolean(), z.string()]).optional(),
388
+ })
389
+ .catchall(z.unknown());
390
+ /** A batch operation for the WordPress REST API. */
391
+ export const WpBatchOperationSchema = z.object({
392
+ method: z.enum(["GET", "POST", "PUT", "PATCH", "DELETE"]),
393
+ path: z.string(),
394
+ body: z.record(z.string(), z.unknown()).optional(),
395
+ });
396
+ /** Result of a WordPress batch operation. */
397
+ export const WpBatchResultSchema = z.looseObject({
398
+ responses: z.array(z.looseObject({
399
+ status: z.number(),
400
+ body: z.unknown(),
401
+ headers: z.record(z.string(), z.string()),
402
+ })),
403
+ });
404
+ //# sourceMappingURL=wordpress.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordpress.schema.js","sourceRoot":"","sources":["../../src/schemas/wordpress.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,122 @@
1
+ import { z } from "zod";
2
+ /** Config for the YouTube service. One GCP project serves all repos. */
3
+ export declare const YoutubeApiConfigSchema: z.ZodObject<{
4
+ apiKey: z.ZodString;
5
+ channelId: z.ZodString;
6
+ }, z.core.$strip>;
7
+ /** Params for `useGetChannelVideos`. */
8
+ export declare const YoutubeListParamsSchema: z.ZodObject<{
9
+ channelId: z.ZodOptional<z.ZodString>;
10
+ playlistId: z.ZodOptional<z.ZodString>;
11
+ maxResults: z.ZodOptional<z.ZodNumber>;
12
+ pageToken: z.ZodOptional<z.ZodString>;
13
+ }, z.core.$strip>;
14
+ /** Resolution-keyed thumbnails (all derivable without an API key). */
15
+ export declare const YoutubeVideoThumbnailsSchema: z.ZodObject<{
16
+ default: z.ZodString;
17
+ medium: z.ZodString;
18
+ high: z.ZodString;
19
+ }, z.core.$strip>;
20
+ /** Normalized video, enriched with player-ready URLs. */
21
+ export declare const YoutubeVideoNormalizedSchema: z.ZodObject<{
22
+ id: z.ZodString;
23
+ title: z.ZodString;
24
+ description: z.ZodString;
25
+ publishedAt: z.ZodString;
26
+ channelTitle: z.ZodOptional<z.ZodString>;
27
+ thumbnails: z.ZodObject<{
28
+ default: z.ZodString;
29
+ medium: z.ZodString;
30
+ high: z.ZodString;
31
+ }, z.core.$strip>;
32
+ thumbnail: z.ZodString;
33
+ url: z.ZodString;
34
+ embedUrl: z.ZodString;
35
+ durationSeconds: z.ZodOptional<z.ZodNumber>;
36
+ viewCount: z.ZodOptional<z.ZodNumber>;
37
+ }, z.core.$strip>;
38
+ /** Paginated channel listing result. */
39
+ export declare const YoutubeVideoPageSchema: z.ZodObject<{
40
+ videos: z.ZodArray<z.ZodObject<{
41
+ id: z.ZodString;
42
+ title: z.ZodString;
43
+ description: z.ZodString;
44
+ publishedAt: z.ZodString;
45
+ channelTitle: z.ZodOptional<z.ZodString>;
46
+ thumbnails: z.ZodObject<{
47
+ default: z.ZodString;
48
+ medium: z.ZodString;
49
+ high: z.ZodString;
50
+ }, z.core.$strip>;
51
+ thumbnail: z.ZodString;
52
+ url: z.ZodString;
53
+ embedUrl: z.ZodString;
54
+ durationSeconds: z.ZodOptional<z.ZodNumber>;
55
+ viewCount: z.ZodOptional<z.ZodNumber>;
56
+ }, z.core.$strip>>;
57
+ nextPageToken: z.ZodOptional<z.ZodString>;
58
+ prevPageToken: z.ZodOptional<z.ZodString>;
59
+ totalResults: z.ZodOptional<z.ZodNumber>;
60
+ }, z.core.$strip>;
61
+ /** Minimal `channels.list` shape (only what the service reads). */
62
+ export declare const YoutubeChannelsResponseSchema: z.ZodObject<{
63
+ items: z.ZodOptional<z.ZodArray<z.ZodObject<{
64
+ contentDetails: z.ZodOptional<z.ZodObject<{
65
+ relatedPlaylists: z.ZodOptional<z.ZodObject<{
66
+ uploads: z.ZodOptional<z.ZodString>;
67
+ }, z.core.$strip>>;
68
+ }, z.core.$strip>>;
69
+ }, z.core.$strip>>>;
70
+ }, z.core.$strip>;
71
+ /** Minimal `playlistItems.list` shape (only what the service reads). */
72
+ export declare const YoutubePlaylistItemsResponseSchema: z.ZodObject<{
73
+ nextPageToken: z.ZodOptional<z.ZodString>;
74
+ prevPageToken: z.ZodOptional<z.ZodString>;
75
+ pageInfo: z.ZodOptional<z.ZodObject<{
76
+ totalResults: z.ZodOptional<z.ZodNumber>;
77
+ }, z.core.$strip>>;
78
+ items: z.ZodOptional<z.ZodArray<z.ZodObject<{
79
+ snippet: z.ZodOptional<z.ZodObject<{
80
+ title: z.ZodOptional<z.ZodString>;
81
+ description: z.ZodOptional<z.ZodString>;
82
+ publishedAt: z.ZodOptional<z.ZodString>;
83
+ channelTitle: z.ZodOptional<z.ZodString>;
84
+ resourceId: z.ZodOptional<z.ZodObject<{
85
+ videoId: z.ZodOptional<z.ZodString>;
86
+ }, z.core.$strip>>;
87
+ thumbnails: z.ZodOptional<z.ZodObject<{
88
+ default: z.ZodOptional<z.ZodObject<{
89
+ url: z.ZodOptional<z.ZodString>;
90
+ }, z.core.$strip>>;
91
+ medium: z.ZodOptional<z.ZodObject<{
92
+ url: z.ZodOptional<z.ZodString>;
93
+ }, z.core.$strip>>;
94
+ high: z.ZodOptional<z.ZodObject<{
95
+ url: z.ZodOptional<z.ZodString>;
96
+ }, z.core.$strip>>;
97
+ }, z.core.$strip>>;
98
+ }, z.core.$strip>>;
99
+ contentDetails: z.ZodOptional<z.ZodObject<{
100
+ videoId: z.ZodOptional<z.ZodString>;
101
+ }, z.core.$strip>>;
102
+ }, z.core.$strip>>>;
103
+ }, z.core.$strip>;
104
+ /** Minimal `videos.list` shape (only what the service reads). */
105
+ export declare const YoutubeVideosResponseSchema: z.ZodObject<{
106
+ items: z.ZodOptional<z.ZodArray<z.ZodObject<{
107
+ id: z.ZodOptional<z.ZodString>;
108
+ snippet: z.ZodOptional<z.ZodObject<{
109
+ title: z.ZodOptional<z.ZodString>;
110
+ description: z.ZodOptional<z.ZodString>;
111
+ publishedAt: z.ZodOptional<z.ZodString>;
112
+ channelTitle: z.ZodOptional<z.ZodString>;
113
+ }, z.core.$strip>>;
114
+ contentDetails: z.ZodOptional<z.ZodObject<{
115
+ duration: z.ZodOptional<z.ZodString>;
116
+ }, z.core.$strip>>;
117
+ statistics: z.ZodOptional<z.ZodObject<{
118
+ viewCount: z.ZodOptional<z.ZodString>;
119
+ }, z.core.$strip>>;
120
+ }, z.core.$strip>>>;
121
+ }, z.core.$strip>;
122
+ //# sourceMappingURL=youtube.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"youtube.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/youtube.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,wEAAwE;AACxE,eAAO,MAAM,sBAAsB;;;iBAKjC,CAAC;AAEH,wCAAwC;AACxC,eAAO,MAAM,uBAAuB;;;;;iBASlC,CAAC;AAEH,sEAAsE;AACtE,eAAO,MAAM,4BAA4B;;;;iBAIvC,CAAC;AAEH,yDAAyD;AACzD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;iBAiBvC,CAAC;AAEH,wCAAwC;AACxC,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;iBAKjC,CAAC;AAQH,mEAAmE;AACnE,eAAO,MAAM,6BAA6B;;;;;;;;iBAYxC,CAAC;AAEH,wEAAwE;AACxE,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2B7C,CAAC;AAEH,iEAAiE;AACjE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;iBAkBtC,CAAC"}