@open-feishu-card/schema 0.1.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 (113) hide show
  1. package/dist/card.d.ts +2761 -0
  2. package/dist/card.d.ts.map +1 -0
  3. package/dist/card.js +41 -0
  4. package/dist/card.js.map +1 -0
  5. package/dist/common/behavior.d.ts +49 -0
  6. package/dist/common/behavior.d.ts.map +1 -0
  7. package/dist/common/behavior.js +39 -0
  8. package/dist/common/behavior.js.map +1 -0
  9. package/dist/common/behaviors-context.d.ts +19 -0
  10. package/dist/common/behaviors-context.d.ts.map +1 -0
  11. package/dist/common/behaviors-context.js +88 -0
  12. package/dist/common/behaviors-context.js.map +1 -0
  13. package/dist/common/confirm.d.ts +18 -0
  14. package/dist/common/confirm.d.ts.map +1 -0
  15. package/dist/common/confirm.js +12 -0
  16. package/dist/common/confirm.js.map +1 -0
  17. package/dist/common/enums.d.ts +115 -0
  18. package/dist/common/enums.d.ts.map +1 -0
  19. package/dist/common/enums.js +131 -0
  20. package/dist/common/enums.js.map +1 -0
  21. package/dist/common/fallback.d.ts +17 -0
  22. package/dist/common/fallback.d.ts.map +1 -0
  23. package/dist/common/fallback.js +22 -0
  24. package/dist/common/fallback.js.map +1 -0
  25. package/dist/common/icon-tokens.d.ts +1162 -0
  26. package/dist/common/icon-tokens.d.ts.map +1 -0
  27. package/dist/common/icon-tokens.js +1163 -0
  28. package/dist/common/icon-tokens.js.map +1 -0
  29. package/dist/common/icon.d.ts +3506 -0
  30. package/dist/common/icon.d.ts.map +1 -0
  31. package/dist/common/icon.js +49 -0
  32. package/dist/common/icon.js.map +1 -0
  33. package/dist/common/index.d.ts +9 -0
  34. package/dist/common/index.d.ts.map +1 -0
  35. package/dist/common/index.js +9 -0
  36. package/dist/common/index.js.map +1 -0
  37. package/dist/common/text.d.ts +107 -0
  38. package/dist/common/text.d.ts.map +1 -0
  39. package/dist/common/text.js +80 -0
  40. package/dist/common/text.js.map +1 -0
  41. package/dist/common/url.d.ts +22 -0
  42. package/dist/common/url.d.ts.map +1 -0
  43. package/dist/common/url.js +30 -0
  44. package/dist/common/url.js.map +1 -0
  45. package/dist/config.d.ts +226 -0
  46. package/dist/config.d.ts.map +1 -0
  47. package/dist/config.js +123 -0
  48. package/dist/config.js.map +1 -0
  49. package/dist/containers/index.d.ts +1421 -0
  50. package/dist/containers/index.d.ts.map +1 -0
  51. package/dist/containers/index.js +205 -0
  52. package/dist/containers/index.js.map +1 -0
  53. package/dist/content/index.d.ts +3801 -0
  54. package/dist/content/index.d.ts.map +1 -0
  55. package/dist/content/index.js +426 -0
  56. package/dist/content/index.js.map +1 -0
  57. package/dist/element-ref.d.ts +6 -0
  58. package/dist/element-ref.d.ts.map +1 -0
  59. package/dist/element-ref.js +17 -0
  60. package/dist/element-ref.js.map +1 -0
  61. package/dist/element.d.ts +11614 -0
  62. package/dist/element.d.ts.map +1 -0
  63. package/dist/element.js +46 -0
  64. package/dist/element.js.map +1 -0
  65. package/dist/header.d.ts +1253 -0
  66. package/dist/header.d.ts.map +1 -0
  67. package/dist/header.js +27 -0
  68. package/dist/header.js.map +1 -0
  69. package/dist/index.d.ts +15 -0
  70. package/dist/index.d.ts.map +1 -0
  71. package/dist/index.js +16 -0
  72. package/dist/index.js.map +1 -0
  73. package/dist/interactive/index.d.ts +5371 -0
  74. package/dist/interactive/index.d.ts.map +1 -0
  75. package/dist/interactive/index.js +533 -0
  76. package/dist/interactive/index.js.map +1 -0
  77. package/dist/markdown/builders.d.ts +59 -0
  78. package/dist/markdown/builders.d.ts.map +1 -0
  79. package/dist/markdown/builders.js +140 -0
  80. package/dist/markdown/builders.js.map +1 -0
  81. package/dist/markdown/code-language.d.ts +78 -0
  82. package/dist/markdown/code-language.d.ts.map +1 -0
  83. package/dist/markdown/code-language.js +79 -0
  84. package/dist/markdown/code-language.js.map +1 -0
  85. package/dist/markdown/component.d.ts +1224 -0
  86. package/dist/markdown/component.d.ts.map +1 -0
  87. package/dist/markdown/component.js +38 -0
  88. package/dist/markdown/component.js.map +1 -0
  89. package/dist/markdown/emoji-tokens.d.ts +192 -0
  90. package/dist/markdown/emoji-tokens.d.ts.map +1 -0
  91. package/dist/markdown/emoji-tokens.js +193 -0
  92. package/dist/markdown/emoji-tokens.js.map +1 -0
  93. package/dist/markdown/enums.d.ts +51 -0
  94. package/dist/markdown/enums.d.ts.map +1 -0
  95. package/dist/markdown/enums.js +49 -0
  96. package/dist/markdown/enums.js.map +1 -0
  97. package/dist/markdown/escape.d.ts +8 -0
  98. package/dist/markdown/escape.d.ts.map +1 -0
  99. package/dist/markdown/escape.js +42 -0
  100. package/dist/markdown/escape.js.map +1 -0
  101. package/dist/markdown/index.d.ts +16 -0
  102. package/dist/markdown/index.d.ts.map +1 -0
  103. package/dist/markdown/index.js +16 -0
  104. package/dist/markdown/index.js.map +1 -0
  105. package/dist/markdown/tags.d.ts +1293 -0
  106. package/dist/markdown/tags.d.ts.map +1 -0
  107. package/dist/markdown/tags.js +238 -0
  108. package/dist/markdown/tags.js.map +1 -0
  109. package/dist/markdown/text-size.d.ts +60 -0
  110. package/dist/markdown/text-size.d.ts.map +1 -0
  111. package/dist/markdown/text-size.js +58 -0
  112. package/dist/markdown/text-size.js.map +1 -0
  113. package/package.json +37 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2C1B,CAAC;AAEJ,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;iBA4BrB,CAAC;AAEJ,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AA0DhD;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+BrB,CAAC;AAEJ,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;iBAMG,CAAC;AAEzB,MAAM,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE1C;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuEE,CAAC;AAE3B,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;iBAwDE,CAAC;AAE3B,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC"}
@@ -0,0 +1,426 @@
1
+ import { z } from 'zod';
2
+ import { ColorSchema, ElementIdSchema, HorizontalAlignSchema, SpacingValueSchema, VerticalAlignSchema, } from '../common/enums.js';
3
+ import { IconSchema, UdIconSchema } from '../common/icon.js';
4
+ import { StyledTextObjectSchema } from '../common/text.js';
5
+ /**
6
+ * 普通文本组件(div)。
7
+ * 支持普通文本/lark_md 与前缀图标。
8
+ */
9
+ export const DivSchema = z
10
+ .object({
11
+ tag: z.literal('div').describe('组件标签,固定为 div'),
12
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
13
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
14
+ /** 宽度:fill / auto / [16,999]px,默认 fill */
15
+ width: z
16
+ .string()
17
+ .optional()
18
+ .describe('组件宽度:fill / auto / [16,999]px,默认 fill'),
19
+ text: StyledTextObjectSchema.optional().describe('文本内容配置'),
20
+ icon: IconSchema.optional().describe('文本前缀图标'),
21
+ })
22
+ .describe('普通文本组件(div)');
23
+ /**
24
+ * 图片组件(img)。
25
+ */
26
+ export const ImageSchema = z
27
+ .object({
28
+ tag: z.literal('img').describe('组件标签,固定为 img'),
29
+ /** 图片 key(上传图片接口返回) */
30
+ img_key: z
31
+ .string()
32
+ .describe('图片 key(上传图片接口返回);禁止臆造。无真实资源时改用 markdown/plain_text/standard_icon'),
33
+ /** 图片描述(无障碍/加载失败时展示) */
34
+ alt: z
35
+ .object({
36
+ tag: z.literal('plain_text').describe('文本类型标签,固定为 plain_text'),
37
+ content: z.string().describe('图片描述文案'),
38
+ })
39
+ .describe('图片描述(无障碍/加载失败时展示)'),
40
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
41
+ margin: SpacingValueSchema.optional().describe('组件外边距;通栏配图贴边可用负水平 margin(如 "4px -12px")'),
42
+ title: z
43
+ .object({
44
+ tag: z.literal('plain_text').describe('文本类型标签,固定为 plain_text'),
45
+ content: z.string().describe('图片标题文案'),
46
+ })
47
+ .optional()
48
+ .describe('图片标题'),
49
+ corner_radius: z.string().optional().describe('圆角半径,如 8px 或 50%'),
50
+ scale_type: z
51
+ .enum(['crop_center', 'crop_top', 'fit_horizontal'])
52
+ .optional()
53
+ .describe('裁剪/缩放方式,默认 crop_center。内容图/截图/通栏配图用 fit_horizontal;crop_center/crop_top 仅用于缩略图/小头像式配图'),
54
+ /** stretch / large / medium / small / tiny / "Wpx Hpx" */
55
+ size: z
56
+ .string()
57
+ .optional()
58
+ .describe('图片尺寸:stretch / large / medium / small / tiny,或自定义 "Wpx Hpx"。仅对 crop_center/crop_top 生效;fit_horizontal 时不要写 size'),
59
+ transparent: z
60
+ .boolean()
61
+ .optional()
62
+ .describe('是否透明底色,默认 false'),
63
+ preview: z
64
+ .boolean()
65
+ .optional()
66
+ .describe('点击后是否支持大图预览,默认 true'),
67
+ /** @deprecated 历史字段 */
68
+ mode: z.string().optional().describe('历史字段,已废弃'),
69
+ custom_width: z
70
+ .number()
71
+ .optional()
72
+ .describe('历史字段:自定义宽度(px)'),
73
+ compact_width: z
74
+ .boolean()
75
+ .optional()
76
+ .describe('历史字段:是否紧凑宽度'),
77
+ })
78
+ .describe('图片组件(img)。内容图/截图用 scale_type=fit_horizontal 且不写 size;缩略图才用 crop_* + size');
79
+ /**
80
+ * 多图混排组件(img_combination)。
81
+ */
82
+ export const ImgCombinationSchema = z
83
+ .object({
84
+ tag: z
85
+ .literal('img_combination')
86
+ .describe('组件标签,固定为 img_combination'),
87
+ combination_mode: z
88
+ .enum(['double', 'triple', 'bisect', 'trisect'])
89
+ .describe('混排模式:double(双图)/ triple(三图)/ bisect(等分两列)/ trisect(等分三列)'),
90
+ img_list: z
91
+ .array(z
92
+ .object({
93
+ img_key: z.string().describe('图片 key(上传图片接口返回)'),
94
+ })
95
+ .describe('混排中的单张图片'))
96
+ .describe('混排图片列表'),
97
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
98
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
99
+ combination_transparent: z
100
+ .boolean()
101
+ .optional()
102
+ .describe('混排区域是否透明底色,默认 false'),
103
+ corner_radius: z.string().optional().describe('图片圆角半径'),
104
+ })
105
+ .describe('多图混排组件(img_combination)');
106
+ /**
107
+ * 人员组件(person)。
108
+ * 仅展示头像/姓名,不会通知对方;要 @/通知请用 markdown `<at>`。
109
+ */
110
+ export const PersonSchema = z
111
+ .object({
112
+ tag: z.literal('person').describe('组件标签,固定为 person'),
113
+ /** open_id / user_id;优先 ou_,避免 on_ */
114
+ user_id: z
115
+ .string()
116
+ .describe('人员 ID:优先 open_id(ou_) 或 user_id;不要用 union_id(on_)。禁止臆造 ID'),
117
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
118
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
119
+ size: z
120
+ .enum(['extra_small', 'small', 'medium', 'large'])
121
+ .optional()
122
+ .describe('人员组件尺寸,默认 medium'),
123
+ show_avatar: z
124
+ .boolean()
125
+ .optional()
126
+ .describe('是否展示头像,默认 true'),
127
+ show_name: z.boolean().optional().describe('是否展示姓名,默认 true'),
128
+ style: z
129
+ .enum(['normal', 'capsule'])
130
+ .optional()
131
+ .describe('展示样式:normal / capsule,默认 normal'),
132
+ })
133
+ .describe('人员组件(person):仅展示,不发通知。提示词说作者/负责人/名单时用;要 @/通知改用 markdown <at>');
134
+ /**
135
+ * 人员列表组件(person_list)。
136
+ * 仅展示,不发通知;要 @/通知请用 markdown `<at>`。
137
+ */
138
+ export const PersonListSchema = z
139
+ .object({
140
+ tag: z.literal('person_list').describe('组件标签,固定为 person_list'),
141
+ persons: z
142
+ .array(z
143
+ .object({
144
+ id: z
145
+ .string()
146
+ .describe('人员 ID:优先 open_id(ou_) 或 user_id;不要用 union_id(on_)。禁止臆造 ID'),
147
+ })
148
+ .describe('人员列表项'))
149
+ .describe('人员列表'),
150
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
151
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
152
+ drop_invalid_user_id: z
153
+ .boolean()
154
+ .optional()
155
+ .describe('是否丢弃无效的 user_id,默认 false'),
156
+ lines: z
157
+ .number()
158
+ .int()
159
+ .optional()
160
+ .describe('最大显示行数,超出省略'),
161
+ show_name: z.boolean().optional().describe('是否展示姓名,默认 true'),
162
+ show_avatar: z
163
+ .boolean()
164
+ .optional()
165
+ .describe('是否展示头像,默认 true'),
166
+ size: z
167
+ .enum(['extra_small', 'small', 'medium', 'large'])
168
+ .optional()
169
+ .describe('人员尺寸,默认 medium'),
170
+ icon: IconSchema.optional().describe('列表前缀图标'),
171
+ ud_icon: UdIconSchema.optional().describe('历史前缀图标(ud_icon);与 icon 同时存在时以 icon 为准'),
172
+ })
173
+ .describe('人员列表组件(person_list):仅展示多人,不发通知。多行多人名单也可用 table 的 persons 列');
174
+ /**
175
+ * 图表组件(chart)。chart_spec 遵循 VChart 规范,此处宽松校验。
176
+ */
177
+ export const ChartSchema = z
178
+ .object({
179
+ tag: z.literal('chart').describe('组件标签,固定为 chart'),
180
+ chart_spec: z
181
+ .record(z.string(), z.unknown())
182
+ .describe('图表配置,遵循 VChart 规范'),
183
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
184
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
185
+ aspect_ratio: z
186
+ .enum(['1:1', '2:1', '4:3', '16:9'])
187
+ .optional()
188
+ .describe('图表宽高比,默认 16:9'),
189
+ color_theme: z
190
+ .enum(['brand', 'rainbow', 'complementary', 'converse', 'primary'])
191
+ .optional()
192
+ .describe('图表配色主题,默认 brand'),
193
+ preview: z
194
+ .boolean()
195
+ .optional()
196
+ .describe('点击后是否支持大图预览,默认 true'),
197
+ /** auto 或 [1,999]px */
198
+ height: z
199
+ .string()
200
+ .optional()
201
+ .describe('图表高度:auto 或 [1,999]px'),
202
+ })
203
+ .describe('图表组件(chart)。旁侧说明类 icon 可用 info_outlined;图表相关 icon 推荐 insert-chart_outlined / sheet-*_outlined / data-sheet_outlined 等枚举内 token');
204
+ const TableHeaderStyleSchema = z
205
+ .object({
206
+ text_align: HorizontalAlignSchema.optional().describe('表头文本对齐方式'),
207
+ text_size: z
208
+ .enum(['normal', 'heading'])
209
+ .optional()
210
+ .describe('表头字号:normal / heading'),
211
+ background_style: z
212
+ .enum(['none', 'grey'])
213
+ .optional()
214
+ .describe('表头背景样式:none / grey'),
215
+ text_color: z
216
+ .enum(['default', 'grey'])
217
+ .optional()
218
+ .describe('表头文字颜色:default / grey'),
219
+ bold: z.boolean().optional().describe('表头文字是否加粗'),
220
+ lines: z
221
+ .number()
222
+ .int()
223
+ .positive()
224
+ .optional()
225
+ .describe('表头最大显示行数'),
226
+ })
227
+ .describe('表格表头样式');
228
+ const TableColumnSchema = z
229
+ .object({
230
+ name: z.string().describe('列的唯一标识,对应 rows 中的字段名'),
231
+ data_type: z
232
+ .enum(['text', 'lark_md', 'options', 'number', 'persons', 'date', 'markdown'])
233
+ .optional()
234
+ .describe('列数据类型:text / lark_md / options / number / persons / date / markdown。Owner/负责人/跟进人等人员列必须用 persons,行值为裸 ou_/user_id(或数组);禁止用 text/lark_md 塞人员 ID,也禁止在单元格写 <person>/<at>'),
235
+ display_name: z.string().optional().describe('列展示名称'),
236
+ /** auto / px / % */
237
+ width: z
238
+ .string()
239
+ .optional()
240
+ .describe('列宽:auto、固定 px 或百分比'),
241
+ vertical_align: VerticalAlignSchema.optional().describe('单元格垂直对齐'),
242
+ horizontal_align: HorizontalAlignSchema.optional().describe('单元格水平对齐'),
243
+ /** number 列格式化 */
244
+ format: z
245
+ .record(z.string(), z.unknown())
246
+ .optional()
247
+ .describe('number 列的格式化配置'),
248
+ date_format: z
249
+ .string()
250
+ .optional()
251
+ .describe('date 列的日期格式,如 yyyy/MM/dd'),
252
+ })
253
+ .describe('表格列定义');
254
+ /**
255
+ * 表格组件(table)。必须在 body.elements 根级;不可嵌套在 column / form / interactive_container 等容器内。
256
+ */
257
+ export const TableSchema = z
258
+ .object({
259
+ tag: z.literal('table').describe('组件标签,固定为 table'),
260
+ columns: z.array(TableColumnSchema).describe('表格列定义列表'),
261
+ rows: z
262
+ .array(z.record(z.string(), z.unknown()))
263
+ .describe('表格行数据,对象 key 对应 columns.name。persons 列值为裸人员 ID 字符串或数组,勿写 <person>/<at>'),
264
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
265
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
266
+ page_size: z
267
+ .number()
268
+ .int()
269
+ .min(1)
270
+ .max(10)
271
+ .optional()
272
+ .describe('每页显示行数,取值 1–10,默认 5'),
273
+ row_height: z
274
+ .string()
275
+ .optional()
276
+ .describe('行高,如 low / middle / high 或自定义 px'),
277
+ row_max_height: z.string().optional().describe('行最大高度'),
278
+ freeze_first_column: z
279
+ .boolean()
280
+ .optional()
281
+ .describe('是否冻结首列,默认 false'),
282
+ header_style: TableHeaderStyleSchema.optional().describe('表头样式'),
283
+ })
284
+ .describe('表格组件(table):必须放在 body.elements 根级,禁止包进 column / interactive_container 等容器');
285
+ /**
286
+ * 分割线组件(hr)。
287
+ */
288
+ export const HrSchema = z
289
+ .object({
290
+ tag: z.literal('hr').describe('组件标签,固定为 hr'),
291
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
292
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
293
+ })
294
+ .describe('分割线组件(hr)');
295
+ /**
296
+ * 音频组件(audio)。
297
+ */
298
+ export const AudioSchema = z
299
+ .object({
300
+ tag: z.literal('audio').describe('组件标签,固定为 audio'),
301
+ file_key: z.string().describe('音频文件 key'),
302
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
303
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
304
+ i18n_file_key: z
305
+ .record(z.string(), z.string())
306
+ .optional()
307
+ .describe('多语言音频文件 key 映射'),
308
+ audio_id: z.string().optional().describe('音频元素标识,用于区分多个音频'),
309
+ disabled: z.boolean().optional().describe('是否禁用音频播放,默认 false'),
310
+ disabled_tips: z
311
+ .object({
312
+ tag: z.literal('plain_text').describe('文本类型标签,固定为 plain_text'),
313
+ content: z.string().describe('禁用提示文案'),
314
+ })
315
+ .optional()
316
+ .describe('禁用时的悬浮提示'),
317
+ show_progress_bar: z
318
+ .boolean()
319
+ .optional()
320
+ .describe('是否展示进度条,默认 true'),
321
+ show_time: z.boolean().optional().describe('是否展示时间,默认 true'),
322
+ time_display: z
323
+ .enum(['default', 'both'])
324
+ .optional()
325
+ .describe('时间展示方式:default / both'),
326
+ time_position: z
327
+ .enum(['end', 'start', 'both_sides'])
328
+ .optional()
329
+ .describe('时间位置:end / start / both_sides'),
330
+ border: z
331
+ .object({
332
+ color: ColorSchema.optional().describe('边框颜色'),
333
+ corner_radius: z.string().optional().describe('边框圆角'),
334
+ })
335
+ .optional()
336
+ .describe('边框样式'),
337
+ style: z
338
+ .enum(['normal', 'flat', 'speak'])
339
+ .optional()
340
+ .describe('音频样式:normal / flat / speak,默认 normal'),
341
+ padding: SpacingValueSchema.optional().describe('组件内边距'),
342
+ background_style: z.string().optional().describe('背景样式'),
343
+ fill_color: ColorSchema.optional().describe('填充颜色'),
344
+ width: z.string().optional().describe('组件宽度'),
345
+ fallback: z
346
+ .union([
347
+ z.literal('drop').describe('客户端不支持时丢弃该组件'),
348
+ z
349
+ .object({
350
+ tag: z
351
+ .literal('fallback_text')
352
+ .describe('降级类型,固定为 fallback_text'),
353
+ text: z
354
+ .object({
355
+ tag: z
356
+ .literal('plain_text')
357
+ .describe('文本类型标签,固定为 plain_text'),
358
+ content: z.string().describe('降级文案内容'),
359
+ })
360
+ .describe('自定义降级文案'),
361
+ })
362
+ .describe('自定义降级文案对象'),
363
+ ])
364
+ .optional()
365
+ .describe('降级配置:drop 丢弃组件,或 fallback_text 自定义文案;省略则用系统默认文案'),
366
+ })
367
+ .describe('音频组件(audio)');
368
+ /**
369
+ * 视频组件(video)。
370
+ */
371
+ export const VideoSchema = z
372
+ .object({
373
+ tag: z.literal('video').describe('组件标签,固定为 video'),
374
+ file_key: z.string().describe('视频文件 key'),
375
+ element_id: ElementIdSchema.optional().describe('组件唯一标识'),
376
+ margin: SpacingValueSchema.optional().describe('组件外边距'),
377
+ i18n_file_key: z
378
+ .record(z.string(), z.string())
379
+ .optional()
380
+ .describe('多语言视频文件 key 映射'),
381
+ enable_download: z
382
+ .boolean()
383
+ .optional()
384
+ .describe('是否允许下载视频,默认 false'),
385
+ show_time: z.boolean().optional().describe('是否展示时长,默认 true'),
386
+ cover: z
387
+ .object({
388
+ img_key: z.string().optional().describe('封面图片 key'),
389
+ i18n_img_key: z
390
+ .record(z.string(), z.string())
391
+ .optional()
392
+ .describe('多语言封面图片 key 映射'),
393
+ })
394
+ .optional()
395
+ .describe('视频封面配置'),
396
+ hover_tips: z
397
+ .object({
398
+ tag: z.literal('plain_text').describe('文本类型标签,固定为 plain_text'),
399
+ content: z.string().describe('悬浮提示文案'),
400
+ })
401
+ .optional()
402
+ .describe('悬浮提示'),
403
+ fallback: z
404
+ .union([
405
+ z.literal('drop').describe('客户端不支持时丢弃该组件'),
406
+ z
407
+ .object({
408
+ tag: z
409
+ .literal('fallback_text')
410
+ .describe('降级类型,固定为 fallback_text'),
411
+ text: z
412
+ .object({
413
+ tag: z
414
+ .literal('plain_text')
415
+ .describe('文本类型标签,固定为 plain_text'),
416
+ content: z.string().describe('降级文案内容'),
417
+ })
418
+ .describe('自定义降级文案'),
419
+ })
420
+ .describe('自定义降级文案对象'),
421
+ ])
422
+ .optional()
423
+ .describe('降级配置:drop 丢弃组件,或 fallback_text 自定义文案;省略则用系统默认文案'),
424
+ })
425
+ .describe('视频组件(video)');
426
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,WAAW,EACX,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAE3D;;;GAGG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC;KACvB,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC9C,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,0CAA0C;IAC1C,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uCAAuC,CAAC;IACpD,IAAI,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC1D,IAAI,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;CAC/C,CAAC;KACD,QAAQ,CAAC,aAAa,CAAC,CAAC;AAI3B;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC9C,uBAAuB;IACvB,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,CACP,kEAAkE,CACnE;IACH,wBAAwB;IACxB,GAAG,EAAE,CAAC;SACH,MAAM,CAAC;QACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC9D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KACvC,CAAC;SACD,QAAQ,CAAC,mBAAmB,CAAC;IAChC,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC5C,yCAAyC,CAC1C;IACD,KAAK,EAAE,CAAC;SACL,MAAM,CAAC;QACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC9D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KACvC,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,MAAM,CAAC;IACnB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACjE,UAAU,EAAE,CAAC;SACV,IAAI,CAAC,CAAC,aAAa,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;SACnD,QAAQ,EAAE;SACV,QAAQ,CACP,uFAAuF,CACxF;IACH,0DAA0D;IAC1D,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,iHAAiH,CAClH;IACH,WAAW,EAAE,CAAC;SACX,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,iBAAiB,CAAC;IAC9B,OAAO,EAAE,CAAC;SACP,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,qBAAqB,CAAC;IAClC,uBAAuB;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;IAChD,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gBAAgB,CAAC;IAC7B,aAAa,EAAE,CAAC;SACb,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,aAAa,CAAC;CAC3B,CAAC;KACD,QAAQ,CACP,0EAA0E,CAC3E,CAAC;AAIJ;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,GAAG,EAAE,CAAC;SACH,OAAO,CAAC,iBAAiB,CAAC;SAC1B,QAAQ,CAAC,0BAA0B,CAAC;IACvC,gBAAgB,EAAE,CAAC;SAChB,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;SAC/C,QAAQ,CACP,0DAA0D,CAC3D;IACH,QAAQ,EAAE,CAAC;SACR,KAAK,CACJ,CAAC;SACE,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KACjD,CAAC;SACD,QAAQ,CAAC,UAAU,CAAC,CACxB;SACA,QAAQ,CAAC,QAAQ,CAAC;IACrB,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,uBAAuB,EAAE,CAAC;SACvB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,qBAAqB,CAAC;IAClC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;CACxD,CAAC;KACD,QAAQ,CAAC,yBAAyB,CAAC,CAAC;AAIvC;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KAC1B,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACpD,sCAAsC;IACtC,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,CACP,2DAA2D,CAC5D;IACH,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;SACjD,QAAQ,EAAE;SACV,QAAQ,CAAC,kBAAkB,CAAC;IAC/B,WAAW,EAAE,CAAC;SACX,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,gBAAgB,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC5D,KAAK,EAAE,CAAC;SACL,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;SAC3B,QAAQ,EAAE;SACV,QAAQ,CAAC,iCAAiC,CAAC;CAC/C,CAAC;KACD,QAAQ,CACP,8DAA8D,CAC/D,CAAC;AAIJ;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC9D,OAAO,EAAE,CAAC;SACP,KAAK,CACJ,CAAC;SACE,MAAM,CAAC;QACN,EAAE,EAAE,CAAC;aACF,MAAM,EAAE;aACR,QAAQ,CACP,2DAA2D,CAC5D;KACJ,CAAC;SACD,QAAQ,CAAC,OAAO,CAAC,CACrB;SACA,QAAQ,CAAC,MAAM,CAAC;IACnB,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,oBAAoB,EAAE,CAAC;SACpB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,0BAA0B,CAAC;IACvC,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,CAAC,aAAa,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC5D,WAAW,EAAE,CAAC;SACX,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,gBAAgB,CAAC;IAC7B,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;SACjD,QAAQ,EAAE;SACV,QAAQ,CAAC,gBAAgB,CAAC;IAC7B,IAAI,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC9C,OAAO,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACvC,uCAAuC,CACxC;CACF,CAAC;KACD,QAAQ,CACP,4DAA4D,CAC7D,CAAC;AAIJ;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAClD,UAAU,EAAE,CAAC;SACV,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;SAC/B,QAAQ,CAAC,mBAAmB,CAAC;IAChC,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,YAAY,EAAE,CAAC;SACZ,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;SACnC,QAAQ,EAAE;SACV,QAAQ,CAAC,eAAe,CAAC;IAC5B,WAAW,EAAE,CAAC;SACX,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;SAClE,QAAQ,EAAE;SACV,QAAQ,CAAC,iBAAiB,CAAC;IAC9B,OAAO,EAAE,CAAC;SACP,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,qBAAqB,CAAC;IAClC,uBAAuB;IACvB,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uBAAuB,CAAC;CACrC,CAAC;KACD,QAAQ,CACP,gIAAgI,CACjI,CAAC;AAIJ,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,UAAU,EAAE,qBAAqB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;IACjE,SAAS,EAAE,CAAC;SACT,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;SAC3B,QAAQ,EAAE;SACV,QAAQ,CAAC,uBAAuB,CAAC;IACpC,gBAAgB,EAAE,CAAC;SAChB,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SACtB,QAAQ,EAAE;SACV,QAAQ,CAAC,oBAAoB,CAAC;IACjC,UAAU,EAAE,CAAC;SACV,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SACzB,QAAQ,EAAE;SACV,QAAQ,CAAC,uBAAuB,CAAC;IACpC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;IACjD,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,UAAU,CAAC;CACxB,CAAC;KACD,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAEtB,MAAM,iBAAiB,GAAG,CAAC;KACxB,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACjD,SAAS,EAAE,CAAC;SACT,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;SAC7E,QAAQ,EAAE;SACV,QAAQ,CACP,uKAAuK,CACxK;IACH,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACrD,oBAAoB;IACpB,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,oBAAoB,CAAC;IACjC,cAAc,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;IAClE,gBAAgB,EAAE,qBAAqB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACzD,SAAS,CACV;IACD,kBAAkB;IAClB,MAAM,EAAE,CAAC;SACN,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,gBAAgB,CAAC;IAC7B,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0BAA0B,CAAC;CACxC,CAAC;KACD,QAAQ,CAAC,OAAO,CAAC,CAAC;AAErB;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAClD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IACvD,IAAI,EAAE,CAAC;SACJ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;SACxC,QAAQ,CACP,wEAAwE,CACzE;IACH,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,EAAE;SACV,QAAQ,CAAC,qBAAqB,CAAC;IAClC,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,kCAAkC,CAAC;IAC/C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,mBAAmB,EAAE,CAAC;SACnB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,iBAAiB,CAAC;IAC9B,YAAY,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;CACjE,CAAC;KACD,QAAQ,CACP,2EAA2E,CAC5E,CAAC;AAIJ;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC;KACtB,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC5C,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;CACxD,CAAC;KACD,QAAQ,CAAC,WAAW,CAAC,CAAC;AAIzB;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAClD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;IACzC,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,aAAa,EAAE,CAAC;SACb,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,QAAQ,EAAE;SACV,QAAQ,CAAC,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IAC3D,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IAC9D,aAAa,EAAE,CAAC;SACb,MAAM,CAAC;QACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC9D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KACvC,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,UAAU,CAAC;IACvB,iBAAiB,EAAE,CAAC;SACjB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,iBAAiB,CAAC;IAC9B,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC5D,YAAY,EAAE,CAAC;SACZ,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SACzB,QAAQ,EAAE;SACV,QAAQ,CAAC,uBAAuB,CAAC;IACpC,aAAa,EAAE,CAAC;SACb,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;SACpC,QAAQ,EAAE;SACV,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,MAAM,EAAE,CAAC;SACN,MAAM,CAAC;QACN,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;KACtD,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,MAAM,CAAC;IACnB,KAAK,EAAE,CAAC;SACL,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;SACjC,QAAQ,EAAE;SACV,QAAQ,CAAC,sCAAsC,CAAC;IACnD,OAAO,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACxD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxD,UAAU,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC7C,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC;QACL,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC1C,CAAC;aACE,MAAM,CAAC;YACN,GAAG,EAAE,CAAC;iBACH,OAAO,CAAC,eAAe,CAAC;iBACxB,QAAQ,CAAC,wBAAwB,CAAC;YACrC,IAAI,EAAE,CAAC;iBACJ,MAAM,CAAC;gBACN,GAAG,EAAE,CAAC;qBACH,OAAO,CAAC,YAAY,CAAC;qBACrB,QAAQ,CAAC,uBAAuB,CAAC;gBACpC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;aACvC,CAAC;iBACD,QAAQ,CAAC,SAAS,CAAC;SACvB,CAAC;aACD,QAAQ,CAAC,WAAW,CAAC;KACzB,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CACP,iDAAiD,CAClD;CACJ,CAAC;KACD,QAAQ,CAAC,aAAa,CAAC,CAAC;AAI3B;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAClD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;IACzC,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IACvD,aAAa,EAAE,CAAC;SACb,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,QAAQ,EAAE;SACV,QAAQ,CAAC,gBAAgB,CAAC;IAC7B,eAAe,EAAE,CAAC;SACf,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,mBAAmB,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC5D,KAAK,EAAE,CAAC;SACL,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;QACnD,YAAY,EAAE,CAAC;aACZ,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;aAC9B,QAAQ,EAAE;aACV,QAAQ,CAAC,gBAAgB,CAAC;KAC9B,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,QAAQ,CAAC;IACrB,UAAU,EAAE,CAAC;SACV,MAAM,CAAC;QACN,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC9D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KACvC,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,MAAM,CAAC;IACnB,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC;QACL,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC1C,CAAC;aACE,MAAM,CAAC;YACN,GAAG,EAAE,CAAC;iBACH,OAAO,CAAC,eAAe,CAAC;iBACxB,QAAQ,CAAC,wBAAwB,CAAC;YACrC,IAAI,EAAE,CAAC;iBACJ,MAAM,CAAC;gBACN,GAAG,EAAE,CAAC;qBACH,OAAO,CAAC,YAAY,CAAC;qBACrB,QAAQ,CAAC,uBAAuB,CAAC;gBACpC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;aACvC,CAAC;iBACD,QAAQ,CAAC,SAAS,CAAC;SACvB,CAAC;aACD,QAAQ,CAAC,WAAW,CAAC;KACzB,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CACP,iDAAiD,CAClD;CACJ,CAAC;KACD,QAAQ,CAAC,aAAa,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ZodType } from 'zod';
2
+ /** 由 element.ts 在定义完成后注册 */
3
+ export declare function registerElementSchema(schema: ZodType): void;
4
+ /** 供 z.lazy(() => getElementSchema()) 使用 */
5
+ export declare function getElementSchema(): ZodType;
6
+ //# sourceMappingURL=element-ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-ref.d.ts","sourceRoot":"","sources":["../src/element-ref.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAQnC,4BAA4B;AAC5B,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAE3D;AAED,4CAA4C;AAC5C,wBAAgB,gBAAgB,IAAI,OAAO,CAK1C"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 递归 ElementSchema 的延迟绑定。
3
+ * 容器组件通过本模块引用 Element,避免循环依赖在模块初始化时炸掉。
4
+ */
5
+ let elementSchema;
6
+ /** 由 element.ts 在定义完成后注册 */
7
+ export function registerElementSchema(schema) {
8
+ elementSchema = schema;
9
+ }
10
+ /** 供 z.lazy(() => getElementSchema()) 使用 */
11
+ export function getElementSchema() {
12
+ if (!elementSchema) {
13
+ throw new Error('ElementSchema 尚未注册,请确认已导入 src/element.ts');
14
+ }
15
+ return elementSchema;
16
+ }
17
+ //# sourceMappingURL=element-ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-ref.js","sourceRoot":"","sources":["../src/element-ref.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,IAAI,aAAkC,CAAC;AAEvC,4BAA4B;AAC5B,MAAM,UAAU,qBAAqB,CAAC,MAAe;IACnD,aAAa,GAAG,MAAM,CAAC;AACzB,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,gBAAgB;IAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC"}