@atikk-co-jp/notion-mcp-server 0.1.0 → 0.2.1

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 (97) hide show
  1. package/README.ja.md +97 -6
  2. package/README.md +97 -6
  3. package/dist/bin/cli.js +10 -10
  4. package/dist/src/converters/__tests__/block-to-markdown.test.d.ts +2 -0
  5. package/dist/src/converters/__tests__/block-to-markdown.test.d.ts.map +1 -0
  6. package/dist/src/converters/__tests__/block-to-markdown.test.js +611 -0
  7. package/dist/src/converters/__tests__/page-to-markdown.test.d.ts +2 -0
  8. package/dist/src/converters/__tests__/page-to-markdown.test.d.ts.map +1 -0
  9. package/dist/src/converters/__tests__/page-to-markdown.test.js +567 -0
  10. package/dist/src/converters/__tests__/rich-text-to-markdown.test.d.ts +2 -0
  11. package/dist/src/converters/__tests__/rich-text-to-markdown.test.d.ts.map +1 -0
  12. package/dist/src/converters/__tests__/rich-text-to-markdown.test.js +353 -0
  13. package/dist/src/converters/block-to-markdown.d.ts +38 -0
  14. package/dist/src/converters/block-to-markdown.d.ts.map +1 -0
  15. package/dist/src/converters/block-to-markdown.js +484 -0
  16. package/dist/src/converters/index.d.ts +9 -0
  17. package/dist/src/converters/index.d.ts.map +1 -0
  18. package/dist/src/converters/index.js +11 -0
  19. package/dist/src/converters/page-to-markdown.d.ts +64 -0
  20. package/dist/src/converters/page-to-markdown.d.ts.map +1 -0
  21. package/dist/src/converters/page-to-markdown.js +189 -0
  22. package/dist/src/converters/rich-text-to-markdown.d.ts +61 -0
  23. package/dist/src/converters/rich-text-to-markdown.d.ts.map +1 -0
  24. package/dist/src/converters/rich-text-to-markdown.js +95 -0
  25. package/dist/src/index.d.ts +6 -6
  26. package/dist/src/index.d.ts.map +1 -1
  27. package/dist/src/index.js +5 -5
  28. package/dist/src/notion-client.d.ts +58 -15
  29. package/dist/src/notion-client.d.ts.map +1 -1
  30. package/dist/src/notion-client.js +23 -13
  31. package/dist/src/schemas/block.d.ts +2158 -622
  32. package/dist/src/schemas/block.d.ts.map +1 -1
  33. package/dist/src/schemas/block.js +283 -76
  34. package/dist/src/schemas/common.d.ts +518 -6
  35. package/dist/src/schemas/common.d.ts.map +1 -1
  36. package/dist/src/schemas/common.js +120 -42
  37. package/dist/src/schemas/database.d.ts +687 -0
  38. package/dist/src/schemas/database.d.ts.map +1 -0
  39. package/dist/src/schemas/database.js +264 -0
  40. package/dist/src/schemas/filter.d.ts +509 -3
  41. package/dist/src/schemas/filter.d.ts.map +1 -1
  42. package/dist/src/schemas/filter.js +110 -13
  43. package/dist/src/schemas/index.d.ts +5 -4
  44. package/dist/src/schemas/index.d.ts.map +1 -1
  45. package/dist/src/schemas/index.js +7 -5
  46. package/dist/src/schemas/page.d.ts +2152 -19
  47. package/dist/src/schemas/page.d.ts.map +1 -1
  48. package/dist/src/schemas/page.js +216 -22
  49. package/dist/src/schemas/schemas.test.d.ts +2 -0
  50. package/dist/src/schemas/schemas.test.d.ts.map +1 -0
  51. package/dist/src/schemas/schemas.test.js +418 -0
  52. package/dist/src/server.d.ts +2 -2
  53. package/dist/src/server.d.ts.map +1 -1
  54. package/dist/src/server.js +6 -6
  55. package/dist/src/tools/append-block-children.d.ts +2 -2
  56. package/dist/src/tools/append-block-children.d.ts.map +1 -1
  57. package/dist/src/tools/append-block-children.js +16 -10
  58. package/dist/src/tools/create-comment.d.ts +2 -2
  59. package/dist/src/tools/create-comment.d.ts.map +1 -1
  60. package/dist/src/tools/create-comment.js +15 -9
  61. package/dist/src/tools/create-database.d.ts +4 -0
  62. package/dist/src/tools/create-database.d.ts.map +1 -0
  63. package/dist/src/tools/create-database.js +57 -0
  64. package/dist/src/tools/create-page.d.ts +2 -2
  65. package/dist/src/tools/create-page.d.ts.map +1 -1
  66. package/dist/src/tools/create-page.js +22 -24
  67. package/dist/src/tools/get-block-children.d.ts +2 -2
  68. package/dist/src/tools/get-block-children.d.ts.map +1 -1
  69. package/dist/src/tools/get-block-children.js +39 -6
  70. package/dist/src/tools/index.d.ts +13 -11
  71. package/dist/src/tools/index.d.ts.map +1 -1
  72. package/dist/src/tools/index.js +13 -9
  73. package/dist/src/tools/query-database.d.ts +2 -2
  74. package/dist/src/tools/query-database.d.ts.map +1 -1
  75. package/dist/src/tools/query-database.js +27 -18
  76. package/dist/src/tools/retrieve-page.d.ts +2 -2
  77. package/dist/src/tools/retrieve-page.d.ts.map +1 -1
  78. package/dist/src/tools/retrieve-page.js +44 -4
  79. package/dist/src/tools/search.d.ts +2 -2
  80. package/dist/src/tools/search.d.ts.map +1 -1
  81. package/dist/src/tools/search.js +18 -12
  82. package/dist/src/tools/update-database.d.ts +4 -0
  83. package/dist/src/tools/update-database.d.ts.map +1 -0
  84. package/dist/src/tools/update-database.js +74 -0
  85. package/dist/src/tools/update-page.d.ts +2 -2
  86. package/dist/src/tools/update-page.d.ts.map +1 -1
  87. package/dist/src/tools/update-page.js +23 -18
  88. package/dist/src/utils/error-handler.d.ts +1 -1
  89. package/dist/src/utils/error-handler.d.ts.map +1 -1
  90. package/dist/src/utils/error-handler.js +14 -14
  91. package/dist/src/utils/index.d.ts +2 -2
  92. package/dist/src/utils/index.d.ts.map +1 -1
  93. package/dist/src/utils/index.js +2 -2
  94. package/dist/src/utils/response-formatter.d.ts +13 -1
  95. package/dist/src/utils/response-formatter.d.ts.map +1 -1
  96. package/dist/src/utils/response-formatter.js +46 -3
  97. package/package.json +11 -2
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../src/schemas/block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../src/schemas/block.ts"],"names":[],"mappings":"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"}
@@ -1,85 +1,138 @@
1
- import { z } from "zod";
2
- import { RichTextArraySchema } from "./common.js";
1
+ import { z } from 'zod';
2
+ import { ColorSchema, RichTextArraySchema } from './common.js';
3
+ // File object schemas (used by image, video, audio, file, pdf blocks)
4
+ export const ExternalFileSchema = z.object({
5
+ type: z.literal('external'),
6
+ external: z.object({
7
+ url: z.string(),
8
+ }),
9
+ });
10
+ export const NotionFileSchema = z.object({
11
+ type: z.literal('file'),
12
+ file: z.object({
13
+ url: z.string(),
14
+ expiry_time: z.string().optional(),
15
+ }),
16
+ });
17
+ export const FileUploadSchema = z.object({
18
+ type: z.literal('file_upload'),
19
+ file_upload: z.object({
20
+ id: z.string(),
21
+ expiry_time: z.string().optional(),
22
+ }),
23
+ });
24
+ export const FileObjectSchema = z.union([ExternalFileSchema, NotionFileSchema, FileUploadSchema]);
25
+ // Icon schemas for callout
26
+ export const EmojiIconBlockSchema = z.object({
27
+ type: z.literal('emoji'),
28
+ emoji: z.string(),
29
+ });
30
+ export const FileIconBlockSchema = z.object({
31
+ type: z.literal('file'),
32
+ file: z.object({
33
+ url: z.string(),
34
+ expiry_time: z.string().optional(),
35
+ }),
36
+ });
37
+ export const ExternalIconBlockSchema = z.object({
38
+ type: z.literal('external'),
39
+ external: z.object({
40
+ url: z.string(),
41
+ }),
42
+ });
43
+ export const IconBlockSchema = z.union([
44
+ EmojiIconBlockSchema,
45
+ FileIconBlockSchema,
46
+ ExternalIconBlockSchema,
47
+ ]);
3
48
  // Paragraph block
4
49
  export const ParagraphBlockSchema = z.object({
5
- object: z.literal("block").optional(),
6
- type: z.literal("paragraph"),
50
+ object: z.literal('block').optional(),
51
+ type: z.literal('paragraph'),
7
52
  paragraph: z.object({
8
53
  rich_text: RichTextArraySchema,
9
- color: z.string().optional(),
54
+ color: ColorSchema.optional(),
55
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
10
56
  }),
11
57
  });
12
58
  // Heading 1 block
13
59
  export const Heading1BlockSchema = z.object({
14
- object: z.literal("block").optional(),
15
- type: z.literal("heading_1"),
60
+ object: z.literal('block').optional(),
61
+ type: z.literal('heading_1'),
16
62
  heading_1: z.object({
17
63
  rich_text: RichTextArraySchema,
18
- color: z.string().optional(),
64
+ color: ColorSchema.optional(),
19
65
  is_toggleable: z.boolean().optional(),
66
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
20
67
  }),
21
68
  });
22
69
  // Heading 2 block
23
70
  export const Heading2BlockSchema = z.object({
24
- object: z.literal("block").optional(),
25
- type: z.literal("heading_2"),
71
+ object: z.literal('block').optional(),
72
+ type: z.literal('heading_2'),
26
73
  heading_2: z.object({
27
74
  rich_text: RichTextArraySchema,
28
- color: z.string().optional(),
75
+ color: ColorSchema.optional(),
29
76
  is_toggleable: z.boolean().optional(),
77
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
30
78
  }),
31
79
  });
32
80
  // Heading 3 block
33
81
  export const Heading3BlockSchema = z.object({
34
- object: z.literal("block").optional(),
35
- type: z.literal("heading_3"),
82
+ object: z.literal('block').optional(),
83
+ type: z.literal('heading_3'),
36
84
  heading_3: z.object({
37
85
  rich_text: RichTextArraySchema,
38
- color: z.string().optional(),
86
+ color: ColorSchema.optional(),
39
87
  is_toggleable: z.boolean().optional(),
88
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
40
89
  }),
41
90
  });
42
91
  // Bulleted list item block
43
92
  export const BulletedListItemBlockSchema = z.object({
44
- object: z.literal("block").optional(),
45
- type: z.literal("bulleted_list_item"),
93
+ object: z.literal('block').optional(),
94
+ type: z.literal('bulleted_list_item'),
46
95
  bulleted_list_item: z.object({
47
96
  rich_text: RichTextArraySchema,
48
- color: z.string().optional(),
97
+ color: ColorSchema.optional(),
98
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
49
99
  }),
50
100
  });
51
101
  // Numbered list item block
52
102
  export const NumberedListItemBlockSchema = z.object({
53
- object: z.literal("block").optional(),
54
- type: z.literal("numbered_list_item"),
103
+ object: z.literal('block').optional(),
104
+ type: z.literal('numbered_list_item'),
55
105
  numbered_list_item: z.object({
56
106
  rich_text: RichTextArraySchema,
57
- color: z.string().optional(),
107
+ color: ColorSchema.optional(),
108
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
58
109
  }),
59
110
  });
60
111
  // To-do block
61
112
  export const ToDoBlockSchema = z.object({
62
- object: z.literal("block").optional(),
63
- type: z.literal("to_do"),
113
+ object: z.literal('block').optional(),
114
+ type: z.literal('to_do'),
64
115
  to_do: z.object({
65
116
  rich_text: RichTextArraySchema,
66
117
  checked: z.boolean().optional(),
67
- color: z.string().optional(),
118
+ color: ColorSchema.optional(),
119
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
68
120
  }),
69
121
  });
70
122
  // Toggle block
71
123
  export const ToggleBlockSchema = z.object({
72
- object: z.literal("block").optional(),
73
- type: z.literal("toggle"),
124
+ object: z.literal('block').optional(),
125
+ type: z.literal('toggle'),
74
126
  toggle: z.object({
75
127
  rich_text: RichTextArraySchema,
76
- color: z.string().optional(),
128
+ color: ColorSchema.optional(),
129
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
77
130
  }),
78
131
  });
79
132
  // Code block
80
133
  export const CodeBlockSchema = z.object({
81
- object: z.literal("block").optional(),
82
- type: z.literal("code"),
134
+ object: z.literal('block').optional(),
135
+ type: z.literal('code'),
83
136
  code: z.object({
84
137
  rich_text: RichTextArraySchema,
85
138
  language: z.string(),
@@ -88,92 +141,230 @@ export const CodeBlockSchema = z.object({
88
141
  });
89
142
  // Quote block
90
143
  export const QuoteBlockSchema = z.object({
91
- object: z.literal("block").optional(),
92
- type: z.literal("quote"),
144
+ object: z.literal('block').optional(),
145
+ type: z.literal('quote'),
93
146
  quote: z.object({
94
147
  rich_text: RichTextArraySchema,
95
- color: z.string().optional(),
148
+ color: ColorSchema.optional(),
149
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
96
150
  }),
97
151
  });
98
152
  // Callout block
99
153
  export const CalloutBlockSchema = z.object({
100
- object: z.literal("block").optional(),
101
- type: z.literal("callout"),
154
+ object: z.literal('block').optional(),
155
+ type: z.literal('callout'),
102
156
  callout: z.object({
103
157
  rich_text: RichTextArraySchema,
104
- icon: z
105
- .union([
106
- z.object({
107
- type: z.literal("emoji"),
108
- emoji: z.string(),
109
- }),
110
- z.object({
111
- type: z.literal("external"),
112
- external: z.object({ url: z.string() }),
113
- }),
114
- ])
115
- .optional(),
116
- color: z.string().optional(),
158
+ icon: IconBlockSchema.optional(),
159
+ color: ColorSchema.optional(),
160
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
117
161
  }),
118
162
  });
119
163
  // Divider block
120
164
  export const DividerBlockSchema = z.object({
121
- object: z.literal("block").optional(),
122
- type: z.literal("divider"),
165
+ object: z.literal('block').optional(),
166
+ type: z.literal('divider'),
123
167
  divider: z.object({}).optional(),
124
168
  });
125
169
  // Bookmark block
126
170
  export const BookmarkBlockSchema = z.object({
127
- object: z.literal("block").optional(),
128
- type: z.literal("bookmark"),
171
+ object: z.literal('block').optional(),
172
+ type: z.literal('bookmark'),
129
173
  bookmark: z.object({
130
174
  url: z.string(),
131
175
  caption: RichTextArraySchema.optional(),
132
176
  }),
133
177
  });
134
- // Image block
178
+ // Image block (supports external, file, file_upload)
135
179
  export const ImageBlockSchema = z.object({
136
- object: z.literal("block").optional(),
137
- type: z.literal("image"),
138
- image: z.object({
139
- type: z.literal("external"),
140
- external: z.object({
141
- url: z.string(),
142
- }),
180
+ object: z.literal('block').optional(),
181
+ type: z.literal('image'),
182
+ image: z
183
+ .object({
143
184
  caption: RichTextArraySchema.optional(),
144
- }),
185
+ })
186
+ .and(FileObjectSchema),
145
187
  });
146
- // Video block
188
+ // Video block (supports external, file, file_upload)
147
189
  export const VideoBlockSchema = z.object({
148
- object: z.literal("block").optional(),
149
- type: z.literal("video"),
150
- video: z.object({
151
- type: z.literal("external"),
152
- external: z.object({
153
- url: z.string(),
154
- }),
190
+ object: z.literal('block').optional(),
191
+ type: z.literal('video'),
192
+ video: z
193
+ .object({
155
194
  caption: RichTextArraySchema.optional(),
156
- }),
195
+ })
196
+ .and(FileObjectSchema),
197
+ });
198
+ // Audio block
199
+ export const AudioBlockSchema = z.object({
200
+ object: z.literal('block').optional(),
201
+ type: z.literal('audio'),
202
+ audio: FileObjectSchema,
203
+ });
204
+ // File block
205
+ export const FileBlockSchema = z.object({
206
+ object: z.literal('block').optional(),
207
+ type: z.literal('file'),
208
+ file: z
209
+ .object({
210
+ caption: RichTextArraySchema.optional(),
211
+ name: z.string().optional(),
212
+ })
213
+ .and(FileObjectSchema),
214
+ });
215
+ // PDF block
216
+ export const PdfBlockSchema = z.object({
217
+ object: z.literal('block').optional(),
218
+ type: z.literal('pdf'),
219
+ pdf: z
220
+ .object({
221
+ caption: RichTextArraySchema.optional(),
222
+ })
223
+ .and(FileObjectSchema),
157
224
  });
158
225
  // Embed block
159
226
  export const EmbedBlockSchema = z.object({
160
- object: z.literal("block").optional(),
161
- type: z.literal("embed"),
227
+ object: z.literal('block').optional(),
228
+ type: z.literal('embed'),
162
229
  embed: z.object({
163
230
  url: z.string(),
164
231
  caption: RichTextArraySchema.optional(),
165
232
  }),
166
233
  });
234
+ // Equation block
235
+ export const EquationBlockSchema = z.object({
236
+ object: z.literal('block').optional(),
237
+ type: z.literal('equation'),
238
+ equation: z.object({
239
+ expression: z.string(),
240
+ }),
241
+ });
167
242
  // Table of contents block
168
243
  export const TableOfContentsBlockSchema = z.object({
169
- object: z.literal("block").optional(),
170
- type: z.literal("table_of_contents"),
244
+ object: z.literal('block').optional(),
245
+ type: z.literal('table_of_contents'),
171
246
  table_of_contents: z.object({
172
- color: z.string().optional(),
247
+ color: ColorSchema.optional(),
248
+ }),
249
+ });
250
+ // Breadcrumb block
251
+ export const BreadcrumbBlockSchema = z.object({
252
+ object: z.literal('block').optional(),
253
+ type: z.literal('breadcrumb'),
254
+ breadcrumb: z.object({}),
255
+ });
256
+ // Column list block
257
+ export const ColumnListBlockSchema = z.object({
258
+ object: z.literal('block').optional(),
259
+ type: z.literal('column_list'),
260
+ column_list: z.object({
261
+ children: z.array(z.lazy(() => ColumnBlockSchema)).optional(),
262
+ }),
263
+ });
264
+ // Column block
265
+ export const ColumnBlockSchema = z.object({
266
+ object: z.literal('block').optional(),
267
+ type: z.literal('column'),
268
+ column: z.object({
269
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
270
+ }),
271
+ });
272
+ // Child page block
273
+ export const ChildPageBlockSchema = z.object({
274
+ object: z.literal('block').optional(),
275
+ type: z.literal('child_page'),
276
+ child_page: z.object({
277
+ title: z.string(),
278
+ }),
279
+ });
280
+ // Child database block
281
+ export const ChildDatabaseBlockSchema = z.object({
282
+ object: z.literal('block').optional(),
283
+ type: z.literal('child_database'),
284
+ child_database: z.object({
285
+ title: z.string(),
286
+ }),
287
+ });
288
+ // Link preview block (read-only)
289
+ export const LinkPreviewBlockSchema = z.object({
290
+ object: z.literal('block').optional(),
291
+ type: z.literal('link_preview'),
292
+ link_preview: z.object({
293
+ url: z.string(),
294
+ }),
295
+ });
296
+ // Link to page block
297
+ export const LinkToPageBlockSchema = z.object({
298
+ object: z.literal('block').optional(),
299
+ type: z.literal('link_to_page'),
300
+ link_to_page: z.union([
301
+ z.object({
302
+ type: z.literal('page_id'),
303
+ page_id: z.string(),
304
+ }),
305
+ z.object({
306
+ type: z.literal('database_id'),
307
+ database_id: z.string(),
308
+ }),
309
+ ]),
310
+ });
311
+ // Synced block (original)
312
+ export const SyncedBlockOriginalSchema = z.object({
313
+ object: z.literal('block').optional(),
314
+ type: z.literal('synced_block'),
315
+ synced_block: z.object({
316
+ synced_from: z.null(),
317
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
318
+ }),
319
+ });
320
+ // Synced block (duplicate/reference)
321
+ export const SyncedBlockDuplicateSchema = z.object({
322
+ object: z.literal('block').optional(),
323
+ type: z.literal('synced_block'),
324
+ synced_block: z.object({
325
+ synced_from: z.object({
326
+ type: z.literal('block_id').optional(),
327
+ block_id: z.string(),
328
+ }),
329
+ }),
330
+ });
331
+ export const SyncedBlockSchema = z.union([SyncedBlockOriginalSchema, SyncedBlockDuplicateSchema]);
332
+ // Table block
333
+ export const TableBlockSchema = z.object({
334
+ object: z.literal('block').optional(),
335
+ type: z.literal('table'),
336
+ table: z.object({
337
+ table_width: z.number().int(),
338
+ has_column_header: z.boolean().optional(),
339
+ has_row_header: z.boolean().optional(),
340
+ children: z.array(z.lazy(() => TableRowBlockSchema)).optional(),
173
341
  }),
174
342
  });
175
- // Combined block schema
176
- export const BlockSchema = z.union([
343
+ // Table row block
344
+ export const TableRowBlockSchema = z.object({
345
+ object: z.literal('block').optional(),
346
+ type: z.literal('table_row'),
347
+ table_row: z.object({
348
+ cells: z.array(RichTextArraySchema),
349
+ }),
350
+ });
351
+ // Template block (deprecated)
352
+ export const TemplateBlockSchema = z.object({
353
+ object: z.literal('block').optional(),
354
+ type: z.literal('template'),
355
+ template: z.object({
356
+ rich_text: RichTextArraySchema,
357
+ children: z.array(z.lazy(() => BlockSchema)).optional(),
358
+ }),
359
+ });
360
+ // Unsupported block (for read-only blocks)
361
+ export const UnsupportedBlockSchema = z.object({
362
+ object: z.literal('block').optional(),
363
+ type: z.literal('unsupported'),
364
+ unsupported: z.object({}).optional(),
365
+ });
366
+ // Combined block schema with proper type annotation for recursive structure
367
+ export const BlockSchema = z.lazy(() => z.union([
177
368
  ParagraphBlockSchema,
178
369
  Heading1BlockSchema,
179
370
  Heading2BlockSchema,
@@ -189,7 +380,23 @@ export const BlockSchema = z.union([
189
380
  BookmarkBlockSchema,
190
381
  ImageBlockSchema,
191
382
  VideoBlockSchema,
383
+ AudioBlockSchema,
384
+ FileBlockSchema,
385
+ PdfBlockSchema,
192
386
  EmbedBlockSchema,
387
+ EquationBlockSchema,
193
388
  TableOfContentsBlockSchema,
194
- ]);
389
+ BreadcrumbBlockSchema,
390
+ ColumnListBlockSchema,
391
+ ColumnBlockSchema,
392
+ ChildPageBlockSchema,
393
+ ChildDatabaseBlockSchema,
394
+ LinkPreviewBlockSchema,
395
+ LinkToPageBlockSchema,
396
+ SyncedBlockSchema,
397
+ TableBlockSchema,
398
+ TableRowBlockSchema,
399
+ TemplateBlockSchema,
400
+ UnsupportedBlockSchema,
401
+ ]));
195
402
  export const BlockChildrenSchema = z.array(BlockSchema);