@zlooks.cn/blog-shared 1.0.1 → 1.0.2

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"management.d.ts","sourceRoot":"","sources":["../src/management.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,572 @@
1
+ import { z } from 'zod';
2
+ import { BLOG_SERVICE_NAMESPACE } from './identity.js';
3
+ import { blogThemeIdSchema, blogThemeSelectionRevisionSchema, } from './themes.js';
4
+ export const BLOG_MANAGEMENT_OPERATIONS = Object.freeze({
5
+ categories: '/management/categories',
6
+ tags: '/management/tags',
7
+ posts: '/management/posts',
8
+ pages: '/management/pages',
9
+ comments: '/management/comments',
10
+ friendLinks: '/management/friend-links',
11
+ themes: '/management/themes',
12
+ });
13
+ const id = z.uuid();
14
+ const dateTime = z.iso.datetime({ offset: true });
15
+ const databaseInteger = z.number().int().min(-2_147_483_648).max(2_147_483_647);
16
+ const nullableText = (max) => z.string().trim().min(1).max(max).nullable();
17
+ const slug = (max) => z
18
+ .string()
19
+ .trim()
20
+ .min(1)
21
+ .max(max)
22
+ .regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/);
23
+ const internalUrl = z
24
+ .string()
25
+ .min(1)
26
+ .max(2_048)
27
+ .regex(/^\/(?!\/)[^\s]*$/);
28
+ const externalUrl = z.url({ protocol: /^https?$/ }).max(2_048);
29
+ const assetUrl = z.union([internalUrl, externalUrl]);
30
+ export const blogManagementIdInputSchema = z.strictObject({ id });
31
+ export const blogManagementListInputSchema = z.strictObject({
32
+ limit: z.number().int().min(1).max(100).default(50),
33
+ cursor: id.optional(),
34
+ });
35
+ export const blogManagementDeletedSchema = z.strictObject({
36
+ deleted: z.literal(true),
37
+ id,
38
+ });
39
+ export const blogManagementCategoryInputSchema = z.strictObject({
40
+ name: z.string().trim().min(1).max(100),
41
+ slug: slug(120),
42
+ description: nullableText(500),
43
+ sortOrder: databaseInteger,
44
+ });
45
+ export const blogManagementCategorySchema = blogManagementCategoryInputSchema.extend({
46
+ id,
47
+ createdAt: dateTime,
48
+ updatedAt: dateTime,
49
+ });
50
+ export const blogManagementCategoryRequestSchema = z.discriminatedUnion('action', [
51
+ blogManagementListInputSchema.extend({ action: z.literal('list') }),
52
+ blogManagementIdInputSchema.extend({ action: z.literal('read') }),
53
+ blogManagementCategoryInputSchema.extend({ action: z.literal('create') }),
54
+ blogManagementCategoryInputSchema.extend({
55
+ action: z.literal('update'),
56
+ id,
57
+ }),
58
+ blogManagementIdInputSchema.extend({ action: z.literal('delete') }),
59
+ ]);
60
+ export const blogManagementCategoryResponseSchema = z.union([
61
+ z.strictObject({
62
+ items: z.array(blogManagementCategorySchema).max(100),
63
+ nextCursor: id.nullable(),
64
+ }),
65
+ z.strictObject({ item: blogManagementCategorySchema }),
66
+ blogManagementDeletedSchema,
67
+ ]);
68
+ export const blogManagementTagInputSchema = z.strictObject({
69
+ name: z.string().trim().min(1).max(100),
70
+ slug: slug(120),
71
+ });
72
+ export const blogManagementTagSchema = blogManagementTagInputSchema.extend({
73
+ id,
74
+ createdAt: dateTime,
75
+ updatedAt: dateTime,
76
+ });
77
+ export const blogManagementTagRequestSchema = z.discriminatedUnion('action', [
78
+ blogManagementListInputSchema.extend({ action: z.literal('list') }),
79
+ blogManagementIdInputSchema.extend({ action: z.literal('read') }),
80
+ blogManagementTagInputSchema.extend({ action: z.literal('create') }),
81
+ blogManagementTagInputSchema.extend({ action: z.literal('update'), id }),
82
+ blogManagementIdInputSchema.extend({ action: z.literal('delete') }),
83
+ ]);
84
+ export const blogManagementTagResponseSchema = z.union([
85
+ z.strictObject({
86
+ items: z.array(blogManagementTagSchema).max(100),
87
+ nextCursor: id.nullable(),
88
+ }),
89
+ z.strictObject({ item: blogManagementTagSchema }),
90
+ blogManagementDeletedSchema,
91
+ ]);
92
+ export const blogManagementPostInputSchema = z.strictObject({
93
+ categoryId: id,
94
+ title: z.string().trim().min(1).max(200),
95
+ slug: slug(200),
96
+ summary: nullableText(500).describe('文章摘要。发布前应尽可能填写;无法从文章可靠概括时使用 null,不得编造信息。'),
97
+ coverUrl: assetUrl
98
+ .nullable()
99
+ .describe('文章封面图 URL。发布前应尽可能填写;只能使用用户提供或经验证可用的 HTTP(S) 资源,不得编造 URL,无法可靠获取时使用 null。'),
100
+ content: z.string().min(1).max(1_000_000),
101
+ tagIds: z
102
+ .array(id)
103
+ .max(20)
104
+ .refine((ids) => new Set(ids).size === ids.length, 'Tag IDs must be unique')
105
+ .describe('文章关联的标签 ID。发布前建议从 blog.list-tag 的现有标签中选择 1 至 5 个准确标签;硬上限为 20,不得重复或编造 ID。'),
106
+ });
107
+ export const blogManagementPostSchema = z
108
+ .strictObject({
109
+ id,
110
+ categoryId: id,
111
+ title: z.string().trim().min(1).max(200),
112
+ slug: slug(200),
113
+ summary: nullableText(500),
114
+ coverUrl: assetUrl.nullable(),
115
+ content: z.string().min(1).max(1_000_000),
116
+ status: z.enum(['draft', 'published', 'archived']),
117
+ publishedAt: dateTime.nullable(),
118
+ createdAt: dateTime,
119
+ updatedAt: dateTime,
120
+ tags: z.array(blogManagementTagSchema).max(20),
121
+ })
122
+ .superRefine((post, context) => {
123
+ if (post.status === 'published' && !post.publishedAt)
124
+ context.addIssue({
125
+ code: 'custom',
126
+ path: ['publishedAt'],
127
+ message: 'Published post requires publishedAt',
128
+ });
129
+ if (post.status === 'draft' && post.publishedAt)
130
+ context.addIssue({
131
+ code: 'custom',
132
+ path: ['publishedAt'],
133
+ message: 'Draft post cannot have publishedAt',
134
+ });
135
+ });
136
+ export const blogManagementPostSearchSchema = z.strictObject({
137
+ id,
138
+ categoryId: id,
139
+ title: z.string().trim().min(1).max(200),
140
+ slug: slug(200),
141
+ summary: nullableText(500),
142
+ coverUrl: assetUrl.nullable(),
143
+ status: z.enum(['draft', 'published', 'archived']),
144
+ publishedAt: dateTime.nullable(),
145
+ createdAt: dateTime,
146
+ updatedAt: dateTime,
147
+ tags: z.array(blogManagementTagSchema).max(20),
148
+ });
149
+ export const blogManagementPostListInputSchema = z.strictObject({
150
+ limit: z.number().int().min(1).max(100).default(50),
151
+ cursor: id.optional(),
152
+ status: z.enum(['draft', 'published', 'archived']).optional(),
153
+ categoryId: id.optional(),
154
+ });
155
+ export const blogManagementPostSearchInputSchema = z.strictObject({
156
+ query: z.string().trim().min(2).max(100),
157
+ limit: z.number().int().min(1).max(20).default(10),
158
+ status: z.enum(['draft', 'published', 'archived']).optional(),
159
+ });
160
+ export const blogManagementPostArchiveInputSchema = z
161
+ .strictObject({
162
+ limit: z.number().int().min(1).max(100).default(50),
163
+ monthLimit: z.number().int().min(1).max(120).default(12),
164
+ cursor: id.optional(),
165
+ year: z.number().int().min(1970).max(9_999).optional(),
166
+ month: z.number().int().min(1).max(12).optional(),
167
+ startYear: z.number().int().min(1970).max(9_999).optional(),
168
+ startMonth: z.number().int().min(1).max(12).optional(),
169
+ endYear: z.number().int().min(1970).max(9_999).optional(),
170
+ endMonth: z.number().int().min(1).max(12).optional(),
171
+ })
172
+ .superRefine((value, context) => {
173
+ if (value.month !== undefined && value.year === undefined)
174
+ context.addIssue({
175
+ code: 'custom',
176
+ message: 'Month requires a year',
177
+ path: ['year'],
178
+ });
179
+ const range = [
180
+ value.startYear,
181
+ value.startMonth,
182
+ value.endYear,
183
+ value.endMonth,
184
+ ];
185
+ const count = range.filter((item) => item !== undefined).length;
186
+ if (count > 0 && count < 4)
187
+ context.addIssue({
188
+ code: 'custom',
189
+ message: 'Range requires complete start and end months',
190
+ path: ['startYear'],
191
+ });
192
+ if (count > 0 && (value.year !== undefined || value.month !== undefined))
193
+ context.addIssue({
194
+ code: 'custom',
195
+ message: 'Single selection and range are mutually exclusive',
196
+ path: ['startYear'],
197
+ });
198
+ if (count === 4 &&
199
+ value.startYear * 12 + value.startMonth >
200
+ value.endYear * 12 + value.endMonth) {
201
+ context.addIssue({
202
+ code: 'custom',
203
+ message: 'Range start must not follow its end',
204
+ path: ['endYear'],
205
+ });
206
+ }
207
+ });
208
+ export const blogManagementPostAuditInputSchema = blogManagementPostInputSchema.pick({
209
+ categoryId: true,
210
+ title: true,
211
+ summary: true,
212
+ content: true,
213
+ tagIds: true,
214
+ });
215
+ export const blogManagementPostAuditSchema = z.strictObject({
216
+ publishable: z.boolean(),
217
+ findings: z
218
+ .array(z.strictObject({
219
+ ruleId: z.string().min(1).max(100),
220
+ severity: z.enum(['block', 'warning', 'info']),
221
+ source: z.enum(['project', 'search-engine', 'heuristic']),
222
+ field: z.enum(['title', 'summary', 'content', 'category', 'tags']),
223
+ message: z.string().min(1).max(500),
224
+ suggestion: z.string().min(1).max(500),
225
+ location: z
226
+ .strictObject({
227
+ line: z.number().int().min(1),
228
+ column: z.number().int().min(1),
229
+ })
230
+ .optional(),
231
+ }))
232
+ .max(200),
233
+ });
234
+ export const blogManagementPostArchiveSchema = z.strictObject({
235
+ items: z.array(blogManagementPostSearchSchema).max(100),
236
+ months: z
237
+ .array(z.strictObject({
238
+ year: z.number().int().min(1970).max(9_999),
239
+ month: z.number().int().min(1).max(12),
240
+ count: z.number().int().min(1),
241
+ }))
242
+ .max(120),
243
+ nextCursor: id.nullable(),
244
+ total: z.number().int().min(0),
245
+ });
246
+ export const blogManagementPostRequestSchema = z.discriminatedUnion('action', [
247
+ blogManagementPostListInputSchema.extend({ action: z.literal('list') }),
248
+ blogManagementPostArchiveInputSchema.extend({
249
+ action: z.literal('archive-list'),
250
+ }),
251
+ blogManagementPostSearchInputSchema.extend({ action: z.literal('search') }),
252
+ blogManagementIdInputSchema.extend({ action: z.literal('read') }),
253
+ blogManagementPostAuditInputSchema.extend({ action: z.literal('audit') }),
254
+ blogManagementPostInputSchema.extend({ action: z.literal('create') }),
255
+ blogManagementPostInputSchema.extend({ action: z.literal('update'), id }),
256
+ blogManagementIdInputSchema.extend({ action: z.literal('publish') }),
257
+ blogManagementIdInputSchema.extend({ action: z.literal('archive') }),
258
+ blogManagementIdInputSchema.extend({ action: z.literal('delete') }),
259
+ ]);
260
+ export const blogManagementPostSuccessResponseSchema = z.union([
261
+ z.strictObject({
262
+ items: z.array(blogManagementPostSchema).max(100),
263
+ nextCursor: id.nullable(),
264
+ }),
265
+ blogManagementPostArchiveSchema,
266
+ z.strictObject({ items: z.array(blogManagementPostSearchSchema).max(20) }),
267
+ z.strictObject({ item: blogManagementPostSchema }),
268
+ blogManagementPostAuditSchema,
269
+ blogManagementDeletedSchema,
270
+ ]);
271
+ export const blogManagementPostBlockedSchema = z.strictObject({
272
+ outcome: z.literal('content-blocked'),
273
+ audit: blogManagementPostAuditSchema,
274
+ });
275
+ export const blogManagementPostResponseSchema = z.union([
276
+ blogManagementPostSuccessResponseSchema,
277
+ blogManagementPostBlockedSchema,
278
+ ]);
279
+ export class BlogPostContentBlockedError extends Error {
280
+ report;
281
+ constructor(report) {
282
+ super('Post content did not satisfy the Blog publication policy');
283
+ this.name = 'BlogPostContentBlockedError';
284
+ this.report = blogManagementPostAuditSchema.parse(report);
285
+ }
286
+ }
287
+ const pagePosition = z.enum(['navigation', 'sidebar']).nullable();
288
+ export const blogManagementPageInputSchema = z.strictObject({
289
+ title: z.string().trim().min(1).max(200),
290
+ slug: slug(200),
291
+ summary: z.string().trim().min(1).max(500),
292
+ content: z.string().min(1).max(1_000_000),
293
+ position: pagePosition,
294
+ sortOrder: databaseInteger,
295
+ });
296
+ export const blogManagementPageSchema = blogManagementPageInputSchema
297
+ .extend({
298
+ id,
299
+ status: z.enum(['draft', 'published', 'archived']),
300
+ publishedAt: dateTime.nullable(),
301
+ createdAt: dateTime,
302
+ updatedAt: dateTime,
303
+ })
304
+ .superRefine((page, context) => {
305
+ if (page.status === 'published' && !page.publishedAt)
306
+ context.addIssue({
307
+ code: 'custom',
308
+ path: ['publishedAt'],
309
+ message: 'Published page requires publishedAt',
310
+ });
311
+ if (page.status === 'draft' && page.publishedAt)
312
+ context.addIssue({
313
+ code: 'custom',
314
+ path: ['publishedAt'],
315
+ message: 'Draft page cannot have publishedAt',
316
+ });
317
+ });
318
+ export const blogManagementPageListInputSchema = z.strictObject({
319
+ limit: z.number().int().min(1).max(100).default(50),
320
+ cursor: id.optional(),
321
+ status: z.enum(['draft', 'published', 'archived']).optional(),
322
+ position: pagePosition.optional(),
323
+ });
324
+ export const blogManagementPageRequestSchema = z.discriminatedUnion('action', [
325
+ blogManagementPageListInputSchema.extend({ action: z.literal('list') }),
326
+ blogManagementIdInputSchema.extend({ action: z.literal('read') }),
327
+ blogManagementPageInputSchema.extend({ action: z.literal('create') }),
328
+ blogManagementPageInputSchema.extend({ action: z.literal('update'), id }),
329
+ blogManagementIdInputSchema.extend({ action: z.literal('publish') }),
330
+ blogManagementIdInputSchema.extend({ action: z.literal('archive') }),
331
+ blogManagementIdInputSchema.extend({ action: z.literal('delete') }),
332
+ ]);
333
+ export const blogManagementPageResponseSchema = z.union([
334
+ z.strictObject({
335
+ items: z.array(blogManagementPageSchema).max(100),
336
+ nextCursor: id.nullable(),
337
+ }),
338
+ z.strictObject({ item: blogManagementPageSchema }),
339
+ blogManagementDeletedSchema,
340
+ ]);
341
+ export const blogManagementCommentSchema = z
342
+ .strictObject({
343
+ id,
344
+ postId: id,
345
+ userId: id,
346
+ content: z.string().trim().min(1).max(2_000),
347
+ replyContent: nullableText(2_000),
348
+ ipAddress: z.union([z.ipv4(), z.ipv6()]).nullable(),
349
+ userAgent: nullableText(1_024),
350
+ ipLocation: nullableText(200),
351
+ clientLabel: nullableText(160),
352
+ repliedAt: dateTime.nullable(),
353
+ status: z.enum(['pending', 'approved', 'rejected']),
354
+ createdAt: dateTime,
355
+ updatedAt: dateTime,
356
+ })
357
+ .refine((comment) => Boolean(comment.replyContent) === Boolean(comment.repliedAt), {
358
+ path: ['repliedAt'],
359
+ message: 'Reply content and timestamp must agree',
360
+ });
361
+ export const blogManagementCommentListInputSchema = z.strictObject({
362
+ limit: z.number().int().min(1).max(100).default(50),
363
+ cursor: id.optional(),
364
+ status: z.enum(['pending', 'approved', 'rejected']).optional(),
365
+ postId: id.optional(),
366
+ order: z.enum(['desc', 'asc']).default('desc'),
367
+ });
368
+ export const blogManagementCommentRequestSchema = z.discriminatedUnion('action', [
369
+ blogManagementCommentListInputSchema.extend({ action: z.literal('list') }),
370
+ blogManagementIdInputSchema.extend({ action: z.literal('read') }),
371
+ blogManagementIdInputSchema.extend({ action: z.literal('approve') }),
372
+ blogManagementIdInputSchema.extend({ action: z.literal('reject') }),
373
+ z.strictObject({
374
+ action: z.literal('reply'),
375
+ id,
376
+ replyContent: nullableText(2_000),
377
+ }),
378
+ blogManagementIdInputSchema.extend({ action: z.literal('delete') }),
379
+ ]);
380
+ export const blogManagementCommentResponseSchema = z.union([
381
+ z.strictObject({
382
+ items: z.array(blogManagementCommentSchema).max(100),
383
+ nextCursor: id.nullable(),
384
+ }),
385
+ z.strictObject({ item: blogManagementCommentSchema }),
386
+ blogManagementDeletedSchema,
387
+ ]);
388
+ export const blogManagementFriendLinkInputSchema = z.strictObject({
389
+ name: z.string().trim().min(1).max(100),
390
+ url: externalUrl,
391
+ description: nullableText(500),
392
+ logoUrl: assetUrl.nullable(),
393
+ enabled: z.boolean(),
394
+ sortOrder: databaseInteger,
395
+ });
396
+ export const blogManagementFriendLinkSchema = blogManagementFriendLinkInputSchema.extend({
397
+ id,
398
+ createdAt: dateTime,
399
+ updatedAt: dateTime,
400
+ });
401
+ export const blogManagementFriendLinkRequestSchema = z.discriminatedUnion('action', [
402
+ blogManagementListInputSchema.extend({ action: z.literal('list') }),
403
+ blogManagementIdInputSchema.extend({ action: z.literal('read') }),
404
+ blogManagementFriendLinkInputSchema.extend({ action: z.literal('create') }),
405
+ blogManagementFriendLinkInputSchema.extend({
406
+ action: z.literal('update'),
407
+ id,
408
+ }),
409
+ blogManagementIdInputSchema.extend({ action: z.literal('enable') }),
410
+ blogManagementIdInputSchema.extend({ action: z.literal('disable') }),
411
+ blogManagementIdInputSchema.extend({ action: z.literal('delete') }),
412
+ ]);
413
+ export const blogManagementFriendLinkResponseSchema = z.union([
414
+ z.strictObject({
415
+ items: z.array(blogManagementFriendLinkSchema).max(100),
416
+ nextCursor: id.nullable(),
417
+ }),
418
+ z.strictObject({ item: blogManagementFriendLinkSchema }),
419
+ blogManagementDeletedSchema,
420
+ ]);
421
+ export const blogManagementThemeSelectionSchema = z.strictObject({
422
+ themeId: blogThemeIdSchema,
423
+ revision: blogThemeSelectionRevisionSchema,
424
+ updatedAt: dateTime,
425
+ updatedBy: z.string().min(1).max(256),
426
+ });
427
+ export const blogManagementThemeSchema = z.strictObject({
428
+ themeId: blogThemeIdSchema,
429
+ displayName: z.string().min(1).max(100),
430
+ description: z.string().max(500).nullable(),
431
+ generation: z.number().int().nonnegative(),
432
+ buildId: z.string(),
433
+ instanceCount: z.number().int().nonnegative(),
434
+ status: z.enum([
435
+ 'available',
436
+ 'conflicted',
437
+ 'selected',
438
+ 'activating',
439
+ 'active',
440
+ 'unavailable',
441
+ 'fallback',
442
+ ]),
443
+ });
444
+ export const blogManagementThemeCatalogSchema = z.strictObject({
445
+ reconciledAt: dateTime,
446
+ selection: blogManagementThemeSelectionSchema,
447
+ themes: z.array(blogManagementThemeSchema).max(100),
448
+ });
449
+ export const blogManagementThemeRequestSchema = z.discriminatedUnion('action', [
450
+ z.strictObject({ action: z.literal('list') }),
451
+ z.strictObject({ action: z.literal('read-selection') }),
452
+ z.strictObject({
453
+ action: z.literal('read-status'),
454
+ themeId: blogThemeIdSchema.optional(),
455
+ }),
456
+ z.strictObject({
457
+ action: z.literal('select'),
458
+ themeId: blogThemeIdSchema,
459
+ actor: z.string().min(1).max(256),
460
+ }),
461
+ ]);
462
+ export const blogManagementThemeResponseSchema = z.union([
463
+ blogManagementThemeCatalogSchema,
464
+ blogManagementThemeSelectionSchema,
465
+ blogManagementThemeSchema,
466
+ ]);
467
+ export function createBlogManagementMicroClient(caller) {
468
+ const invoke = async (operation, request, response, options) => response.parse(await caller.call(BLOG_SERVICE_NAMESPACE, operation, request, options));
469
+ const group = (operation, request, response, options) => invoke(operation, request, response, options);
470
+ const client = {
471
+ listCategories: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.categories, { action: 'list', ...blogManagementListInputSchema.parse(input) }, blogManagementCategoryResponseSchema, options),
472
+ readCategory: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.categories, { action: 'read', ...blogManagementIdInputSchema.parse(input) }, blogManagementCategoryResponseSchema, options),
473
+ createCategory: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.categories, { action: 'create', ...blogManagementCategoryInputSchema.parse(input) }, blogManagementCategoryResponseSchema, options),
474
+ updateCategory: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.categories, {
475
+ action: 'update',
476
+ ...blogManagementCategoryInputSchema.extend({ id }).parse(input),
477
+ }, blogManagementCategoryResponseSchema, options),
478
+ deleteCategory: async (input, options) => blogManagementDeletedSchema.parse(await group(BLOG_MANAGEMENT_OPERATIONS.categories, { action: 'delete', ...blogManagementIdInputSchema.parse(input) }, blogManagementCategoryResponseSchema, options)),
479
+ listTags: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.tags, { action: 'list', ...blogManagementListInputSchema.parse(input) }, blogManagementTagResponseSchema, options),
480
+ readTag: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.tags, { action: 'read', ...blogManagementIdInputSchema.parse(input) }, blogManagementTagResponseSchema, options),
481
+ createTag: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.tags, { action: 'create', ...blogManagementTagInputSchema.parse(input) }, blogManagementTagResponseSchema, options),
482
+ updateTag: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.tags, {
483
+ action: 'update',
484
+ ...blogManagementTagInputSchema.extend({ id }).parse(input),
485
+ }, blogManagementTagResponseSchema, options),
486
+ deleteTag: async (input, options) => blogManagementDeletedSchema.parse(await group(BLOG_MANAGEMENT_OPERATIONS.tags, { action: 'delete', ...blogManagementIdInputSchema.parse(input) }, blogManagementTagResponseSchema, options)),
487
+ listPosts: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.posts, { action: 'list', ...blogManagementPostListInputSchema.parse(input) }, blogManagementPostResponseSchema, options),
488
+ listPostArchive: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.posts, {
489
+ action: 'archive-list',
490
+ ...blogManagementPostArchiveInputSchema.parse(input),
491
+ }, blogManagementPostResponseSchema, options),
492
+ searchPosts: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.posts, {
493
+ action: 'search',
494
+ ...blogManagementPostSearchInputSchema.parse(input),
495
+ }, blogManagementPostResponseSchema, options),
496
+ readPost: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.posts, { action: 'read', ...blogManagementIdInputSchema.parse(input) }, blogManagementPostResponseSchema, options),
497
+ auditPostContent: async (input, options) => blogManagementPostAuditSchema.parse(await group(BLOG_MANAGEMENT_OPERATIONS.posts, {
498
+ action: 'audit',
499
+ ...blogManagementPostAuditInputSchema.parse(input),
500
+ }, blogManagementPostResponseSchema, options)),
501
+ createPost: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.posts, { action: 'create', ...blogManagementPostInputSchema.parse(input) }, blogManagementPostResponseSchema, options),
502
+ updatePost: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.posts, {
503
+ action: 'update',
504
+ ...blogManagementPostInputSchema.extend({ id }).parse(input),
505
+ }, blogManagementPostResponseSchema, options),
506
+ publishPost: async (input, options) => {
507
+ const response = await group(BLOG_MANAGEMENT_OPERATIONS.posts, { action: 'publish', ...blogManagementIdInputSchema.parse(input) }, blogManagementPostResponseSchema, options);
508
+ if ('outcome' in response) {
509
+ throw new BlogPostContentBlockedError(response.audit);
510
+ }
511
+ return blogManagementPostSuccessResponseSchema.parse(response);
512
+ },
513
+ archivePost: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.posts, { action: 'archive', ...blogManagementIdInputSchema.parse(input) }, blogManagementPostResponseSchema, options),
514
+ deletePost: async (input, options) => blogManagementDeletedSchema.parse(await group(BLOG_MANAGEMENT_OPERATIONS.posts, { action: 'delete', ...blogManagementIdInputSchema.parse(input) }, blogManagementPostResponseSchema, options)),
515
+ listPages: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.pages, { action: 'list', ...blogManagementPageListInputSchema.parse(input) }, blogManagementPageResponseSchema, options),
516
+ readPage: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.pages, { action: 'read', ...blogManagementIdInputSchema.parse(input) }, blogManagementPageResponseSchema, options),
517
+ createPage: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.pages, { action: 'create', ...blogManagementPageInputSchema.parse(input) }, blogManagementPageResponseSchema, options),
518
+ updatePage: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.pages, {
519
+ action: 'update',
520
+ ...blogManagementPageInputSchema.extend({ id }).parse(input),
521
+ }, blogManagementPageResponseSchema, options),
522
+ publishPage: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.pages, { action: 'publish', ...blogManagementIdInputSchema.parse(input) }, blogManagementPageResponseSchema, options),
523
+ archivePage: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.pages, { action: 'archive', ...blogManagementIdInputSchema.parse(input) }, blogManagementPageResponseSchema, options),
524
+ deletePage: async (input, options) => blogManagementDeletedSchema.parse(await group(BLOG_MANAGEMENT_OPERATIONS.pages, { action: 'delete', ...blogManagementIdInputSchema.parse(input) }, blogManagementPageResponseSchema, options)),
525
+ listComments: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.comments, {
526
+ action: 'list',
527
+ ...blogManagementCommentListInputSchema.parse(input),
528
+ }, blogManagementCommentResponseSchema, options),
529
+ readComment: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.comments, { action: 'read', ...blogManagementIdInputSchema.parse(input) }, blogManagementCommentResponseSchema, options),
530
+ approveComment: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.comments, { action: 'approve', ...blogManagementIdInputSchema.parse(input) }, blogManagementCommentResponseSchema, options),
531
+ rejectComment: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.comments, { action: 'reject', ...blogManagementIdInputSchema.parse(input) }, blogManagementCommentResponseSchema, options),
532
+ replyComment: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.comments, {
533
+ action: 'reply',
534
+ ...z
535
+ .strictObject({ id, replyContent: nullableText(2_000) })
536
+ .parse(input),
537
+ }, blogManagementCommentResponseSchema, options),
538
+ deleteComment: async (input, options) => blogManagementDeletedSchema.parse(await group(BLOG_MANAGEMENT_OPERATIONS.comments, { action: 'delete', ...blogManagementIdInputSchema.parse(input) }, blogManagementCommentResponseSchema, options)),
539
+ listFriendLinks: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.friendLinks, { action: 'list', ...blogManagementListInputSchema.parse(input) }, blogManagementFriendLinkResponseSchema, options),
540
+ readFriendLink: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.friendLinks, { action: 'read', ...blogManagementIdInputSchema.parse(input) }, blogManagementFriendLinkResponseSchema, options),
541
+ createFriendLink: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.friendLinks, {
542
+ action: 'create',
543
+ ...blogManagementFriendLinkInputSchema.parse(input),
544
+ }, blogManagementFriendLinkResponseSchema, options),
545
+ updateFriendLink: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.friendLinks, {
546
+ action: 'update',
547
+ ...blogManagementFriendLinkInputSchema.extend({ id }).parse(input),
548
+ }, blogManagementFriendLinkResponseSchema, options),
549
+ enableFriendLink: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.friendLinks, { action: 'enable', ...blogManagementIdInputSchema.parse(input) }, blogManagementFriendLinkResponseSchema, options),
550
+ disableFriendLink: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.friendLinks, { action: 'disable', ...blogManagementIdInputSchema.parse(input) }, blogManagementFriendLinkResponseSchema, options),
551
+ deleteFriendLink: async (input, options) => blogManagementDeletedSchema.parse(await group(BLOG_MANAGEMENT_OPERATIONS.friendLinks, { action: 'delete', ...blogManagementIdInputSchema.parse(input) }, blogManagementFriendLinkResponseSchema, options)),
552
+ listThemes: (options) => group(BLOG_MANAGEMENT_OPERATIONS.themes, { action: 'list' }, blogManagementThemeCatalogSchema, options),
553
+ readThemeSelection: (options) => group(BLOG_MANAGEMENT_OPERATIONS.themes, { action: 'read-selection' }, blogManagementThemeSelectionSchema, options),
554
+ readThemeStatus: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.themes, {
555
+ action: 'read-status',
556
+ ...z
557
+ .strictObject({ themeId: blogThemeIdSchema.optional() })
558
+ .parse(input),
559
+ }, blogManagementThemeSchema, options),
560
+ selectTheme: (input, options) => group(BLOG_MANAGEMENT_OPERATIONS.themes, {
561
+ action: 'select',
562
+ ...z
563
+ .strictObject({
564
+ themeId: blogThemeIdSchema,
565
+ actor: z.string().min(1).max(256),
566
+ })
567
+ .parse(input),
568
+ }, blogManagementThemeCatalogSchema, options),
569
+ };
570
+ return Object.freeze(client);
571
+ }
572
+ //# sourceMappingURL=management.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"management.js","sourceRoot":"","sources":["../src/management.ts"],"names":[],"mappings":"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"}