@schemx/vue 1.0.0-next.2 → 1.0.0-next.4

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 (88) hide show
  1. package/README.md +292 -293
  2. package/dist/analyze.html +1 -1
  3. package/dist/bridge/fieldBridge.d.ts +10 -0
  4. package/dist/bridge/fieldBridge.d.ts.map +1 -0
  5. package/dist/bridge/formBridge.d.ts +13 -0
  6. package/dist/bridge/formBridge.d.ts.map +1 -0
  7. package/dist/bridge/formInstance.d.ts +18 -0
  8. package/dist/bridge/formInstance.d.ts.map +1 -0
  9. package/dist/bridge/helpers.d.ts +39 -0
  10. package/dist/bridge/helpers.d.ts.map +1 -0
  11. package/dist/bridge/index.d.ts +13 -0
  12. package/dist/bridge/index.d.ts.map +1 -0
  13. package/dist/bridge/types.d.ts +69 -0
  14. package/dist/bridge/types.d.ts.map +1 -0
  15. package/dist/bridge/viewSchemaBridge.d.ts +5 -0
  16. package/dist/bridge/viewSchemaBridge.d.ts.map +1 -0
  17. package/dist/components/Button/index.vue.d.ts +30 -0
  18. package/dist/components/Button/index.vue.d.ts.map +1 -0
  19. package/dist/components/Button/types.d.ts.map +1 -1
  20. package/dist/components/ConfigProvider/index.d.ts +68 -0
  21. package/dist/components/ConfigProvider/index.d.ts.map +1 -0
  22. package/dist/components/Dynamic/index.d.ts +30 -0
  23. package/dist/components/Dynamic/index.d.ts.map +1 -0
  24. package/dist/components/Field/index.d.ts +47 -0
  25. package/dist/components/Field/index.d.ts.map +1 -0
  26. package/dist/components/Field/slot.d.ts +40 -0
  27. package/dist/components/Field/slot.d.ts.map +1 -0
  28. package/dist/components/Group/index.d.ts +46 -0
  29. package/dist/components/Group/index.d.ts.map +1 -0
  30. package/dist/components/Group/slot.d.ts +34 -0
  31. package/dist/components/Group/slot.d.ts.map +1 -0
  32. package/dist/config/index.d.ts +2 -0
  33. package/dist/config/index.d.ts.map +1 -1
  34. package/dist/config/providerConfig.d.ts +15 -0
  35. package/dist/config/providerConfig.d.ts.map +1 -0
  36. package/dist/config/vueConfig.d.ts +12 -0
  37. package/dist/config/vueConfig.d.ts.map +1 -0
  38. package/dist/form.d.ts +2 -2
  39. package/dist/form.d.ts.map +1 -1
  40. package/dist/hocs/withRemoteOptions.d.ts.map +1 -1
  41. package/dist/hooks/index.d.ts +3 -3
  42. package/dist/hooks/index.d.ts.map +1 -1
  43. package/dist/hooks/provideFieldContext.d.ts +2 -2
  44. package/dist/hooks/provideFormContext.d.ts +13 -46
  45. package/dist/hooks/provideFormContext.d.ts.map +1 -1
  46. package/dist/hooks/useDictionary.d.ts.map +1 -1
  47. package/dist/hooks/useField.d.ts +1 -1
  48. package/dist/hooks/useField.d.ts.map +1 -1
  49. package/dist/hooks/useForm.d.ts +3 -3
  50. package/dist/hooks/useForm.d.ts.map +1 -1
  51. package/dist/hooks/useFormSelector.d.ts +4 -0
  52. package/dist/hooks/useFormSelector.d.ts.map +1 -1
  53. package/dist/hooks/useViewSchemas.d.ts +2 -34
  54. package/dist/hooks/useViewSchemas.d.ts.map +1 -1
  55. package/dist/hooks/useWatch.d.ts.map +1 -1
  56. package/dist/index.cjs +1 -1
  57. package/dist/index.cjs.map +1 -1
  58. package/dist/index.d.ts +5 -6
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.mjs +923 -557
  61. package/dist/index.mjs.map +1 -1
  62. package/dist/style.css +1 -1
  63. package/dist/types/dictionary.d.ts +1 -1
  64. package/dist/types/dictionary.d.ts.map +1 -1
  65. package/dist/types/field.d.ts +38 -2
  66. package/dist/types/field.d.ts.map +1 -1
  67. package/dist/types/form.d.ts +11 -7
  68. package/dist/types/form.d.ts.map +1 -1
  69. package/dist/types/index.d.ts +4 -4
  70. package/dist/types/index.d.ts.map +1 -1
  71. package/dist/utils/helpers.d.ts +4 -0
  72. package/dist/utils/helpers.d.ts.map +1 -1
  73. package/dist/utils/index.d.ts +2 -0
  74. package/dist/utils/index.d.ts.map +1 -1
  75. package/dist/utils/presetRuleProvider.d.ts +16 -0
  76. package/dist/utils/presetRuleProvider.d.ts.map +1 -0
  77. package/dist/utils/rendererProvider.d.ts.map +1 -1
  78. package/package.json +3 -3
  79. package/dist/components/FormGroup/index.d.ts +0 -16
  80. package/dist/components/FormGroup/index.d.ts.map +0 -1
  81. package/dist/components/FormItem/index.d.ts +0 -22
  82. package/dist/components/FormItem/index.d.ts.map +0 -1
  83. package/dist/components/FormItem/slot.d.ts +0 -48
  84. package/dist/components/FormItem/slot.d.ts.map +0 -1
  85. package/dist/formBridge.d.ts +0 -188
  86. package/dist/formBridge.d.ts.map +0 -1
  87. package/dist/utils/rulesProvider.d.ts +0 -16
  88. package/dist/utils/rulesProvider.d.ts.map +0 -1
@@ -0,0 +1,40 @@
1
+ import { ShallowRef, Slots, VNodeChild } from 'vue';
2
+ import { FormContextProps } from '../../hooks/provideFormConfigContext';
3
+ import { FieldInstance } from '../../types/field';
4
+ import { SchemxComponentProps, SchemxInstance, SchemxViewFieldSchema, Values } from '@schemx/core';
5
+ /** Field 插槽渲染所需的状态与依赖。 */
6
+ interface FieldSlotRendererOptions<TValues extends Values = Values> {
7
+ /** 当前字段 ViewSchema。 */
8
+ schemaRef: Readonly<ShallowRef<SchemxViewFieldSchema<TValues>>>;
9
+ /** 当前字段的响应式控制器。 */
10
+ field: FieldInstance<TValues>;
11
+ /** 当前表单实例,用于解析 Renderer。 */
12
+ form: SchemxInstance<TValues>;
13
+ /** 表单级展示配置。 */
14
+ formContext: FormContextProps;
15
+ /** 传给 Renderer 的稳定属性。 */
16
+ componentProps: Readonly<ShallowRef<SchemxComponentProps<TValues>>>;
17
+ /** 父组件传入的所有具名插槽。 */
18
+ slots: Slots;
19
+ }
20
+ /**
21
+ * 创建 Field 各区域的插槽渲染函数。
22
+ *
23
+ * `Before`、`Content`、`After` 依次包裹 Renderer;`Error` 位于控件之后。
24
+ */
25
+ export declare function createFieldSlotRenderers<TValues extends Values = Values>(options: FieldSlotRendererOptions<TValues>): {
26
+ createSlotProps: (additionalProps?: Record<string, unknown>) => {
27
+ schema: SchemxViewFieldSchema<TValues>;
28
+ componentProps: SchemxComponentProps<TValues>;
29
+ value: import('node_modules/@schemx/core/dist/types/namePathType').PathValue<TValues, TValues extends any[] ? `${number}` | (TValues[number] extends infer T ? T extends TValues[number] ? T extends any[] ? `${number}.${number}` | (T[number] extends infer T_1 ? T_1 extends T[number] ? T_1 extends any[] ? `${number}.${number}.${number}` | (T_1[number] extends infer T_2 ? T_2 extends T_1[number] ? T_2 extends any[] ? `${number}.${number}.${number}.${number}` | (T_2[number] extends infer T_3 ? T_3 extends T_2[number] ? T_3 extends any[] ? `${number}.${number}.${number}.${number}.${number}` : T_3 extends object ? { [TKey in keyof T_3 & string]: T_3[TKey] extends Function ? never : `${number}.${number}.${number}.${number}.${TKey}`; }[keyof T_3 & string] : never : never : never) : T_2 extends object ? { [TKey_1 in keyof T_2 & string]: T_2[TKey_1] extends Function ? never : `${number}.${number}.${number}.${TKey_1}` | (Required<T_2>[TKey_1] extends infer T_4 ? T_4 extends Required<T_2>[TKey_1] ? T_4 extends any[] ? `${number}.${number}.${number}.${TKey_1}` extends infer T_5 ? T_5 extends `${number}.${number}.${number}.${TKey_1}` ? T_5 extends "" ? `${number}` : `${T_5}.${number}` : never : never : T_4 extends object ? { [TKey_3 in keyof T_4 & string]: T_4[TKey_3] extends Function ? never : `${number}.${number}.${number}.${TKey_1}` extends infer T_6 ? T_6 extends `${number}.${number}.${number}.${TKey_1}` ? T_6 extends "" ? TKey_3 : `${T_6}.${TKey_3}` : never : never; }[keyof T_4 & string] : never : never : never); }[keyof T_2 & string] : never : never : never) : T_1 extends object ? { [TKey_2 in keyof T_1 & string]: T_1[TKey_2] extends Function ? never : `${number}.${number}.${TKey_2}` | (Required<T_1>[TKey_2] extends infer T_4 ? T_4 extends Required<T_1>[TKey_2] ? T_4 extends any[] ? (`${number}.${number}.${TKey_2}` extends infer T_5 ? T_5 extends `${number}.${number}.${TKey_2}` ? T_5 extends "" ? `${number}` : `${T_5}.${number}` : never : never) | (T_4[number] extends infer T_6 ? T_6 extends T_4[number] ? T_6 extends any[] ? (`${number}.${number}.${TKey_2}` extends infer T_7 ? T_7 extends `${number}.${number}.${TKey_2}` ? T_7 extends "" ? `${number}` : `${T_7}.${number}` : never : never) extends infer T_8 ? T_8 extends (`${number}.${number}.${TKey_2}` extends infer T_9 ? T_9 extends `${number}.${number}.${TKey_2}` ? T_9 extends "" ? `${number}` : `${T_9}.${number}` : never : never) ? T_8 extends "" ? `${number}` : `${T_8}.${number}` : never : never : T_6 extends object ? { [TKey_4 in keyof T_6 & string]: T_6[TKey_4] extends Function ? never : (`${number}.${number}.${TKey_2}` extends infer T_10 ? T_10 extends `${number}.${number}.${TKey_2}` ? T_10 extends "" ? `${number}` : `${T_10}.${number}` : never : never) extends infer T_11 ? T_11 extends (`${number}.${number}.${TKey_2}` extends infer T_12 ? T_12 extends `${number}.${number}.${TKey_2}` ? T_12 extends "" ? `${number}` : `${T_12}.${number}` : never : never) ? T_11 extends "" ? TKey_4 : `${T_11}.${TKey_4}` : never : never; }[keyof T_6 & string] : never : never : never) : T_4 extends object ? { [TKey_5 in keyof T_4 & string]: T_4[TKey_5] extends Function ? never : (`${number}.${number}.${TKey_2}` extends infer T_10 ? T_10 extends `${number}.${number}.${TKey_2}` ? T_10 extends "" ? TKey_5 : `${T_10}.${TKey_5}` : never : never) | (Required<T_4>[TKey_5] extends infer T_11 ? T_11 extends Required<T_4>[TKey_5] ? T_11 extends any[] ? (`${number}.${number}.${TKey_2}` extends infer T_12 ? T_12 extends `${number}.${number}.${TKey_2}` ? T_12 extends "" ? TKey_5 : `${T_12}.${TKey_5}` : never : never) extends infer T_13 ? T_13 extends (`${number}.${number}.${TKey_2}` extends infer T_14 ? T_14 extends `${number}.${number}.${TKey_2}` ? T_14 extends "" ? TKey_5 : `${T_14}.${TKey_5}` : never : never) ? T_13 extends "" ? `${number}` : `${T_13}.${number}` : never : never : T_11 extends object ? { [TKey_6 in keyof T_11 & string]: T_11[TKey_6] extends Function ? never : (`${number}.${number}.${TKey_2}` extends infer T_15 ? T_15 extends `${number}.${number}.${TKey_2}` ? T_15 extends "" ? TKey_5 : `${T_15}.${TKey_5}` : never : never) extends infer T_16 ? T_16 extends (`${number}.${number}.${TKey_2}` extends infer T_17 ? T_17 extends `${number}.${number}.${TKey_2}` ? T_17 extends "" ? TKey_5 : `${T_17}.${TKey_5}` : never : never) ? T_16 extends "" ? TKey_6 : `${T_16}.${TKey_6}` : never : never; }[keyof T_11 & string] : never : never : never); }[keyof T_4 & string] : never : never : never); }[keyof T_1 & string] : never : never : never) : T extends object ? { [TKey_3 in keyof T & string]: T[TKey_3] extends Function ? never : `${number}.${TKey_3}` | (Required<T>[TKey_3] extends infer T_4 ? T_4 extends Required<T>[TKey_3] ? T_4 extends any[] ? (`${number}.${TKey_3}` extends infer T_5 ? T_5 extends `${number}.${TKey_3}` ? T_5 extends "" ? `${number}` : `${T_5}.${number}` : never : never) | (T_4[number] extends infer T_6 ? T_6 extends T_4[number] ? T_6 extends any[] ? ((`${number}.${TKey_3}` extends infer T_7 ? T_7 extends `${number}.${TKey_3}` ? T_7 extends "" ? `${number}` : `${T_7}.${number}` : never : never) extends infer T_8 ? T_8 extends (`${number}.${TKey_3}` extends infer T_9 ? T_9 extends `${number}.${TKey_3}` ? T_9 extends "" ? `${number}` : `${T_9}.${number}` : never : never) ? T_8 extends "" ? `${number}` : `${T_8}.${number}` : never : never) | (T_6[number] extends infer T_10 ? T_10 extends T_6[number] ? T_10 extends any[] ? ((`${number}.${TKey_3}` extends infer T_11 ? T_11 extends `${number}.${TKey_3}` ? T_11 extends "" ? `${number}` : `${T_11}.${number}` : never : never) extends infer T_12 ? T_12 extends (`${number}.${TKey_3}` extends infer T_13 ? T_13 extends `${number}.${TKey_3}` ? T_13 extends "" ? `${number}` : `${T_13}.${number}` : never : never) ? T_12 extends "" ? `${number}` : `${T_12}.${number}` : never : never) extends infer T_14 ? T_14 extends ((`${number}.${TKey_3}` extends infer T_15 ? T_15 extends `${number}.${TKey_3}` ? T_15 extends "" ? `${number}` : `${T_15}.${number}` : never : never) extends infer T_16 ? T_16 extends (`${number}.${TKey_3}` extends infer T_17 ? T_17 extends `${number}.${TKey_3}` ? T_17 extends "" ? `${number}` : `${T_17}.${number}` : never : never) ? T_16 extends "" ? `${number}` : `${T_16}.${number}` : never : never) ? T_14 extends "" ? `${number}` : `${T_14}.${number}` : never : never : T_10 extends object ? { [TKey_5 in keyof T_10 & string]: T_10[TKey_5] extends Function ? never : ((`${number}.${TKey_3}` extends infer T_18 ? T_18 extends `${number}.${TKey_3}` ? T_18 extends "" ? `${number}` : `${T_18}.${number}` : never : never) extends infer T_19 ? T_19 extends (`${number}.${TKey_3}` extends infer T_20 ? T_20 extends `${number}.${TKey_3}` ? T_20 extends "" ? `${number}` : `${T_20}.${number}` : never : never) ? T_19 extends "" ? `${number}` : `${T_19}.${number}` : never : never) extends infer T_21 ? T_21 extends ((`${number}.${TKey_3}` extends infer T_22 ? T_22 extends `${number}.${TKey_3}` ? T_22 extends "" ? `${number}` : `${T_22}.${number}` : never : never) extends infer T_23 ? T_23 extends (`${number}.${TKey_3}` extends infer T_24 ? T_24 extends `${number}.${TKey_3}` ? T_24 extends "" ? `${number}` : `${T_24}.${number}` : never : never) ? T_23 extends "" ? `${number}` : `${T_23}.${number}` : never : never) ? T_21 extends "" ? TKey_5 : `${T_21}.${TKey_5}` : never : never; }[keyof T_10 & string] : never : never : never) : T_6 extends object ? { [TKey_6 in keyof T_6 & string]: T_6[TKey_6] extends Function ? never : ((`${number}.${TKey_3}` extends infer T_18 ? T_18 extends `${number}.${TKey_3}` ? T_18 extends "" ? `${number}` : `${T_18}.${number}` : never : never) extends infer T_19 ? T_19 extends (`${number}.${TKey_3}` extends infer T_20 ? T_20 extends `${number}.${TKey_3}` ? T_20 extends "" ? `${number}` : `${T_20}.${number}` : never : never) ? T_19 extends "" ? TKey_6 : `${T_19}.${TKey_6}` : never : never) | (Required<T_6>[TKey_6] extends infer T_21 ? T_21 extends Required<T_6>[TKey_6] ? T_21 extends any[] ? ((`${number}.${TKey_3}` extends infer T_22 ? T_22 extends `${number}.${TKey_3}` ? T_22 extends "" ? `${number}` : `${T_22}.${number}` : never : never) extends infer T_23 ? T_23 extends (`${number}.${TKey_3}` extends infer T_24 ? T_24 extends `${number}.${TKey_3}` ? T_24 extends "" ? `${number}` : `${T_24}.${number}` : never : never) ? T_23 extends "" ? TKey_6 : `${T_23}.${TKey_6}` : never : never) extends infer T_25 ? T_25 extends ((`${number}.${TKey_3}` extends infer T_26 ? T_26 extends `${number}.${TKey_3}` ? T_26 extends "" ? `${number}` : `${T_26}.${number}` : never : never) extends infer T_27 ? T_27 extends (`${number}.${TKey_3}` extends infer T_28 ? T_28 extends `${number}.${TKey_3}` ? T_28 extends "" ? `${number}` : `${T_28}.${number}` : never : never) ? T_27 extends "" ? TKey_6 : `${T_27}.${TKey_6}` : never : never) ? T_25 extends "" ? `${number}` : `${T_25}.${number}` : never : never : T_21 extends object ? { [TKey_7 in keyof T_21 & string]: T_21[TKey_7] extends Function ? never : ((`${number}.${TKey_3}` extends infer T_29 ? T_29 extends `${number}.${TKey_3}` ? T_29 extends "" ? `${number}` : `${T_29}.${number}` : never : never) extends infer T_30 ? T_30 extends (`${number}.${TKey_3}` extends infer T_31 ? T_31 extends `${number}.${TKey_3}` ? T_31 extends "" ? `${number}` : `${T_31}.${number}` : never : never) ? T_30 extends "" ? TKey_6 : `${T_30}.${TKey_6}` : never : never) extends infer T_32 ? T_32 extends ((`${number}.${TKey_3}` extends infer T_33 ? T_33 extends `${number}.${TKey_3}` ? T_33 extends "" ? `${number}` : `${T_33}.${number}` : never : never) extends infer T_34 ? T_34 extends (`${number}.${TKey_3}` extends infer T_35 ? T_35 extends `${number}.${TKey_3}` ? T_35 extends "" ? `${number}` : `${T_35}.${number}` : never : never) ? T_34 extends "" ? TKey_6 : `${T_34}.${TKey_6}` : never : never) ? T_32 extends "" ? TKey_7 : `${T_32}.${TKey_7}` : never : never; }[keyof T_21 & string] : never : never : never); }[keyof T_6 & string] : never : never : never) : T_4 extends object ? { [TKey_7 in keyof T_4 & string]: T_4[TKey_7] extends Function ? never : (`${number}.${TKey_3}` extends infer T_18 ? T_18 extends `${number}.${TKey_3}` ? T_18 extends "" ? TKey_7 : `${T_18}.${TKey_7}` : never : never) | (Required<T_4>[TKey_7] extends infer T_19 ? T_19 extends Required<T_4>[TKey_7] ? T_19 extends any[] ? ((`${number}.${TKey_3}` extends infer T_20 ? T_20 extends `${number}.${TKey_3}` ? T_20 extends "" ? TKey_7 : `${T_20}.${TKey_7}` : never : never) extends infer T_21 ? T_21 extends (`${number}.${TKey_3}` extends infer T_22 ? T_22 extends `${number}.${TKey_3}` ? T_22 extends "" ? TKey_7 : `${T_22}.${TKey_7}` : never : never) ? T_21 extends "" ? `${number}` : `${T_21}.${number}` : never : never) | (T_19[number] extends infer T_23 ? T_23 extends T_19[number] ? T_23 extends any[] ? ((`${number}.${TKey_3}` extends infer T_24 ? T_24 extends `${number}.${TKey_3}` ? T_24 extends "" ? TKey_7 : `${T_24}.${TKey_7}` : never : never) extends infer T_25 ? T_25 extends (`${number}.${TKey_3}` extends infer T_26 ? T_26 extends `${number}.${TKey_3}` ? T_26 extends "" ? TKey_7 : `${T_26}.${TKey_7}` : never : never) ? T_25 extends "" ? `${number}` : `${T_25}.${number}` : never : never) extends infer T_27 ? T_27 extends ((`${number}.${TKey_3}` extends infer T_28 ? T_28 extends `${number}.${TKey_3}` ? T_28 extends "" ? TKey_7 : `${T_28}.${TKey_7}` : never : never) extends infer T_29 ? T_29 extends (`${number}.${TKey_3}` extends infer T_30 ? T_30 extends `${number}.${TKey_3}` ? T_30 extends "" ? TKey_7 : `${T_30}.${TKey_7}` : never : never) ? T_29 extends "" ? `${number}` : `${T_29}.${number}` : never : never) ? T_27 extends "" ? `${number}` : `${T_27}.${number}` : never : never : T_23 extends object ? { [TKey_8 in keyof T_23 & string]: T_23[TKey_8] extends Function ? never : ((`${number}.${TKey_3}` extends infer T_31 ? T_31 extends `${number}.${TKey_3}` ? T_31 extends "" ? TKey_7 : `${T_31}.${TKey_7}` : never : never) extends infer T_32 ? T_32 extends (`${number}.${TKey_3}` extends infer T_33 ? T_33 extends `${number}.${TKey_3}` ? T_33 extends "" ? TKey_7 : `${T_33}.${TKey_7}` : never : never) ? T_32 extends "" ? `${number}` : `${T_32}.${number}` : never : never) extends infer T_34 ? T_34 extends ((`${number}.${TKey_3}` extends infer T_35 ? T_35 extends `${number}.${TKey_3}` ? T_35 extends "" ? TKey_7 : `${T_35}.${TKey_7}` : never : never) extends infer T_36 ? T_36 extends (`${number}.${TKey_3}` extends infer T_37 ? T_37 extends `${number}.${TKey_3}` ? T_37 extends "" ? TKey_7 : `${T_37}.${TKey_7}` : never : never) ? T_36 extends "" ? `${number}` : `${T_36}.${number}` : never : never) ? T_34 extends "" ? TKey_8 : `${T_34}.${TKey_8}` : never : never; }[keyof T_23 & string] : never : never : never) : T_19 extends object ? { [TKey_9 in keyof T_19 & string]: T_19[TKey_9] extends Function ? never : ((`${number}.${TKey_3}` extends infer T_31 ? T_31 extends `${number}.${TKey_3}` ? T_31 extends "" ? TKey_7 : `${T_31}.${TKey_7}` : never : never) extends infer T_32 ? T_32 extends (`${number}.${TKey_3}` extends infer T_33 ? T_33 extends `${number}.${TKey_3}` ? T_33 extends "" ? TKey_7 : `${T_33}.${TKey_7}` : never : never) ? T_32 extends "" ? TKey_9 : `${T_32}.${TKey_9}` : never : never) | (Required<T_19>[TKey_9] extends infer T_34 ? T_34 extends Required<T_19>[TKey_9] ? T_34 extends any[] ? ((`${number}.${TKey_3}` extends infer T_35 ? T_35 extends `${number}.${TKey_3}` ? T_35 extends "" ? TKey_7 : `${T_35}.${TKey_7}` : never : never) extends infer T_36 ? T_36 extends (`${number}.${TKey_3}` extends infer T_37 ? T_37 extends `${number}.${TKey_3}` ? T_37 extends "" ? TKey_7 : `${T_37}.${TKey_7}` : never : never) ? T_36 extends "" ? TKey_9 : `${T_36}.${TKey_9}` : never : never) extends infer T_38 ? T_38 extends ((`${number}.${TKey_3}` extends infer T_39 ? T_39 extends `${number}.${TKey_3}` ? T_39 extends "" ? TKey_7 : `${T_39}.${TKey_7}` : never : never) extends infer T_40 ? T_40 extends (`${number}.${TKey_3}` extends infer T_41 ? T_41 extends `${number}.${TKey_3}` ? T_41 extends "" ? TKey_7 : `${T_41}.${TKey_7}` : never : never) ? T_40 extends "" ? TKey_9 : `${T_40}.${TKey_9}` : never : never) ? T_38 extends "" ? `${number}` : `${T_38}.${number}` : never : never : T_34 extends object ? { [TKey_10 in keyof T_34 & string]: T_34[TKey_10] extends Function ? never : ((`${number}.${TKey_3}` extends infer T_42 ? T_42 extends `${number}.${TKey_3}` ? T_42 extends "" ? TKey_7 : `${T_42}.${TKey_7}` : never : never) extends infer T_43 ? T_43 extends (`${number}.${TKey_3}` extends infer T_44 ? T_44 extends `${number}.${TKey_3}` ? T_44 extends "" ? TKey_7 : `${T_44}.${TKey_7}` : never : never) ? T_43 extends "" ? TKey_9 : `${T_43}.${TKey_9}` : never : never) extends infer T_45 ? T_45 extends ((`${number}.${TKey_3}` extends infer T_46 ? T_46 extends `${number}.${TKey_3}` ? T_46 extends "" ? TKey_7 : `${T_46}.${TKey_7}` : never : never) extends infer T_47 ? T_47 extends (`${number}.${TKey_3}` extends infer T_48 ? T_48 extends `${number}.${TKey_3}` ? T_48 extends "" ? TKey_7 : `${T_48}.${TKey_7}` : never : never) ? T_47 extends "" ? TKey_9 : `${T_47}.${TKey_9}` : never : never) ? T_45 extends "" ? TKey_10 : `${T_45}.${TKey_10}` : never : never; }[keyof T_34 & string] : never : never : never); }[keyof T_19 & string] : never : never : never); }[keyof T_4 & string] : never : never : never); }[keyof T & string] : never : never : never) : TValues extends object ? { [TKey_4 in keyof TValues & string]: TValues[TKey_4] extends Function ? never : TKey_4 | (Required<TValues>[TKey_4] extends infer T_4 ? T_4 extends Required<TValues>[TKey_4] ? T_4 extends any[] ? (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) | (T_4[number] extends infer T_5 ? T_5 extends T_4[number] ? T_5 extends any[] ? ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_6 ? T_6 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_6 extends "" ? `${number}` : `${T_6}.${number}` : never : never) | (T_5[number] extends infer T_7 ? T_7 extends T_5[number] ? T_7 extends any[] ? (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_8 ? T_8 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_8 extends "" ? `${number}` : `${T_8}.${number}` : never : never) extends infer T_9 ? T_9 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_10 ? T_10 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_10 extends "" ? `${number}` : `${T_10}.${number}` : never : never) ? T_9 extends "" ? `${number}` : `${T_9}.${number}` : never : never) | (T_7[number] extends infer T_11 ? T_11 extends T_7[number] ? T_11 extends any[] ? (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_12 ? T_12 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_12 extends "" ? `${number}` : `${T_12}.${number}` : never : never) extends infer T_13 ? T_13 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_14 ? T_14 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_14 extends "" ? `${number}` : `${T_14}.${number}` : never : never) ? T_13 extends "" ? `${number}` : `${T_13}.${number}` : never : never) extends infer T_15 ? T_15 extends (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_16 ? T_16 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_16 extends "" ? `${number}` : `${T_16}.${number}` : never : never) extends infer T_17 ? T_17 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_18 ? T_18 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_18 extends "" ? `${number}` : `${T_18}.${number}` : never : never) ? T_17 extends "" ? `${number}` : `${T_17}.${number}` : never : never) ? T_15 extends "" ? `${number}` : `${T_15}.${number}` : never : never : T_11 extends object ? { [TKey_6 in keyof T_11 & string]: T_11[TKey_6] extends Function ? never : (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_19 ? T_19 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_19 extends "" ? `${number}` : `${T_19}.${number}` : never : never) extends infer T_20 ? T_20 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_21 ? T_21 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_21 extends "" ? `${number}` : `${T_21}.${number}` : never : never) ? T_20 extends "" ? `${number}` : `${T_20}.${number}` : never : never) extends infer T_22 ? T_22 extends (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_23 ? T_23 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_23 extends "" ? `${number}` : `${T_23}.${number}` : never : never) extends infer T_24 ? T_24 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_25 ? T_25 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_25 extends "" ? `${number}` : `${T_25}.${number}` : never : never) ? T_24 extends "" ? `${number}` : `${T_24}.${number}` : never : never) ? T_22 extends "" ? TKey_6 : `${T_22}.${TKey_6}` : never : never; }[keyof T_11 & string] : never : never : never) : T_7 extends object ? { [TKey_7 in keyof T_7 & string]: T_7[TKey_7] extends Function ? never : (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_19 ? T_19 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_19 extends "" ? `${number}` : `${T_19}.${number}` : never : never) extends infer T_20 ? T_20 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_21 ? T_21 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_21 extends "" ? `${number}` : `${T_21}.${number}` : never : never) ? T_20 extends "" ? TKey_7 : `${T_20}.${TKey_7}` : never : never) | (Required<T_7>[TKey_7] extends infer T_22 ? T_22 extends Required<T_7>[TKey_7] ? T_22 extends any[] ? (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_23 ? T_23 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_23 extends "" ? `${number}` : `${T_23}.${number}` : never : never) extends infer T_24 ? T_24 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_25 ? T_25 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_25 extends "" ? `${number}` : `${T_25}.${number}` : never : never) ? T_24 extends "" ? TKey_7 : `${T_24}.${TKey_7}` : never : never) extends infer T_26 ? T_26 extends (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_27 ? T_27 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_27 extends "" ? `${number}` : `${T_27}.${number}` : never : never) extends infer T_28 ? T_28 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_29 ? T_29 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_29 extends "" ? `${number}` : `${T_29}.${number}` : never : never) ? T_28 extends "" ? TKey_7 : `${T_28}.${TKey_7}` : never : never) ? T_26 extends "" ? `${number}` : `${T_26}.${number}` : never : never : T_22 extends object ? { [TKey_8 in keyof T_22 & string]: T_22[TKey_8] extends Function ? never : (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_30 ? T_30 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_30 extends "" ? `${number}` : `${T_30}.${number}` : never : never) extends infer T_31 ? T_31 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_32 ? T_32 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_32 extends "" ? `${number}` : `${T_32}.${number}` : never : never) ? T_31 extends "" ? TKey_7 : `${T_31}.${TKey_7}` : never : never) extends infer T_33 ? T_33 extends (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_34 ? T_34 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_34 extends "" ? `${number}` : `${T_34}.${number}` : never : never) extends infer T_35 ? T_35 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_36 ? T_36 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_36 extends "" ? `${number}` : `${T_36}.${number}` : never : never) ? T_35 extends "" ? TKey_7 : `${T_35}.${TKey_7}` : never : never) ? T_33 extends "" ? TKey_8 : `${T_33}.${TKey_8}` : never : never; }[keyof T_22 & string] : never : never : never); }[keyof T_7 & string] : never : never : never) : T_5 extends object ? { [TKey_8 in keyof T_5 & string]: T_5[TKey_8] extends Function ? never : ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_19 ? T_19 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_19 extends "" ? TKey_8 : `${T_19}.${TKey_8}` : never : never) | (Required<T_5>[TKey_8] extends infer T_20 ? T_20 extends Required<T_5>[TKey_8] ? T_20 extends any[] ? (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_21 ? T_21 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_21 extends "" ? TKey_8 : `${T_21}.${TKey_8}` : never : never) extends infer T_22 ? T_22 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_23 ? T_23 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_23 extends "" ? TKey_8 : `${T_23}.${TKey_8}` : never : never) ? T_22 extends "" ? `${number}` : `${T_22}.${number}` : never : never) | (T_20[number] extends infer T_24 ? T_24 extends T_20[number] ? T_24 extends any[] ? (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_25 ? T_25 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_25 extends "" ? TKey_8 : `${T_25}.${TKey_8}` : never : never) extends infer T_26 ? T_26 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_27 ? T_27 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_27 extends "" ? TKey_8 : `${T_27}.${TKey_8}` : never : never) ? T_26 extends "" ? `${number}` : `${T_26}.${number}` : never : never) extends infer T_28 ? T_28 extends (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_29 ? T_29 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_29 extends "" ? TKey_8 : `${T_29}.${TKey_8}` : never : never) extends infer T_30 ? T_30 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_31 ? T_31 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_31 extends "" ? TKey_8 : `${T_31}.${TKey_8}` : never : never) ? T_30 extends "" ? `${number}` : `${T_30}.${number}` : never : never) ? T_28 extends "" ? `${number}` : `${T_28}.${number}` : never : never : T_24 extends object ? { [TKey_9 in keyof T_24 & string]: T_24[TKey_9] extends Function ? never : (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_32 ? T_32 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_32 extends "" ? TKey_8 : `${T_32}.${TKey_8}` : never : never) extends infer T_33 ? T_33 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_34 ? T_34 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_34 extends "" ? TKey_8 : `${T_34}.${TKey_8}` : never : never) ? T_33 extends "" ? `${number}` : `${T_33}.${number}` : never : never) extends infer T_35 ? T_35 extends (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_36 ? T_36 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_36 extends "" ? TKey_8 : `${T_36}.${TKey_8}` : never : never) extends infer T_37 ? T_37 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_38 ? T_38 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_38 extends "" ? TKey_8 : `${T_38}.${TKey_8}` : never : never) ? T_37 extends "" ? `${number}` : `${T_37}.${number}` : never : never) ? T_35 extends "" ? TKey_9 : `${T_35}.${TKey_9}` : never : never; }[keyof T_24 & string] : never : never : never) : T_20 extends object ? { [TKey_10 in keyof T_20 & string]: T_20[TKey_10] extends Function ? never : (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_32 ? T_32 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_32 extends "" ? TKey_8 : `${T_32}.${TKey_8}` : never : never) extends infer T_33 ? T_33 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_34 ? T_34 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_34 extends "" ? TKey_8 : `${T_34}.${TKey_8}` : never : never) ? T_33 extends "" ? TKey_10 : `${T_33}.${TKey_10}` : never : never) | (Required<T_20>[TKey_10] extends infer T_35 ? T_35 extends Required<T_20>[TKey_10] ? T_35 extends any[] ? (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_36 ? T_36 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_36 extends "" ? TKey_8 : `${T_36}.${TKey_8}` : never : never) extends infer T_37 ? T_37 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_38 ? T_38 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_38 extends "" ? TKey_8 : `${T_38}.${TKey_8}` : never : never) ? T_37 extends "" ? TKey_10 : `${T_37}.${TKey_10}` : never : never) extends infer T_39 ? T_39 extends (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_40 ? T_40 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_40 extends "" ? TKey_8 : `${T_40}.${TKey_8}` : never : never) extends infer T_41 ? T_41 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_42 ? T_42 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_42 extends "" ? TKey_8 : `${T_42}.${TKey_8}` : never : never) ? T_41 extends "" ? TKey_10 : `${T_41}.${TKey_10}` : never : never) ? T_39 extends "" ? `${number}` : `${T_39}.${number}` : never : never : T_35 extends object ? { [TKey_11 in keyof T_35 & string]: T_35[TKey_11] extends Function ? never : (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_43 ? T_43 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_43 extends "" ? TKey_8 : `${T_43}.${TKey_8}` : never : never) extends infer T_44 ? T_44 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_45 ? T_45 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_45 extends "" ? TKey_8 : `${T_45}.${TKey_8}` : never : never) ? T_44 extends "" ? TKey_10 : `${T_44}.${TKey_10}` : never : never) extends infer T_46 ? T_46 extends (((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_47 ? T_47 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_47 extends "" ? TKey_8 : `${T_47}.${TKey_8}` : never : never) extends infer T_48 ? T_48 extends ((TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) extends infer T_49 ? T_49 extends (TKey_4 extends "" ? `${number}` : `${TKey_4}.${number}`) ? T_49 extends "" ? TKey_8 : `${T_49}.${TKey_8}` : never : never) ? T_48 extends "" ? TKey_10 : `${T_48}.${TKey_10}` : never : never) ? T_46 extends "" ? TKey_11 : `${T_46}.${TKey_11}` : never : never; }[keyof T_35 & string] : never : never : never); }[keyof T_20 & string] : never : never : never); }[keyof T_5 & string] : never : never : never) : T_4 extends object ? { [TKey_9 in keyof T_4 & string]: T_4[TKey_9] extends Function ? never : (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) | (Required<T_4>[TKey_9] extends infer T_19 ? T_19 extends Required<T_4>[TKey_9] ? T_19 extends any[] ? ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_20 ? T_20 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_20 extends "" ? `${number}` : `${T_20}.${number}` : never : never) | (T_19[number] extends infer T_21 ? T_21 extends T_19[number] ? T_21 extends any[] ? (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_22 ? T_22 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_22 extends "" ? `${number}` : `${T_22}.${number}` : never : never) extends infer T_23 ? T_23 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_24 ? T_24 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_24 extends "" ? `${number}` : `${T_24}.${number}` : never : never) ? T_23 extends "" ? `${number}` : `${T_23}.${number}` : never : never) | (T_21[number] extends infer T_25 ? T_25 extends T_21[number] ? T_25 extends any[] ? (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_26 ? T_26 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_26 extends "" ? `${number}` : `${T_26}.${number}` : never : never) extends infer T_27 ? T_27 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_28 ? T_28 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_28 extends "" ? `${number}` : `${T_28}.${number}` : never : never) ? T_27 extends "" ? `${number}` : `${T_27}.${number}` : never : never) extends infer T_29 ? T_29 extends (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_30 ? T_30 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_30 extends "" ? `${number}` : `${T_30}.${number}` : never : never) extends infer T_31 ? T_31 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_32 ? T_32 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_32 extends "" ? `${number}` : `${T_32}.${number}` : never : never) ? T_31 extends "" ? `${number}` : `${T_31}.${number}` : never : never) ? T_29 extends "" ? `${number}` : `${T_29}.${number}` : never : never : T_25 extends object ? { [TKey_10 in keyof T_25 & string]: T_25[TKey_10] extends Function ? never : (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_33 ? T_33 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_33 extends "" ? `${number}` : `${T_33}.${number}` : never : never) extends infer T_34 ? T_34 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_35 ? T_35 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_35 extends "" ? `${number}` : `${T_35}.${number}` : never : never) ? T_34 extends "" ? `${number}` : `${T_34}.${number}` : never : never) extends infer T_36 ? T_36 extends (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_37 ? T_37 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_37 extends "" ? `${number}` : `${T_37}.${number}` : never : never) extends infer T_38 ? T_38 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_39 ? T_39 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_39 extends "" ? `${number}` : `${T_39}.${number}` : never : never) ? T_38 extends "" ? `${number}` : `${T_38}.${number}` : never : never) ? T_36 extends "" ? TKey_10 : `${T_36}.${TKey_10}` : never : never; }[keyof T_25 & string] : never : never : never) : T_21 extends object ? { [TKey_11 in keyof T_21 & string]: T_21[TKey_11] extends Function ? never : (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_33 ? T_33 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_33 extends "" ? `${number}` : `${T_33}.${number}` : never : never) extends infer T_34 ? T_34 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_35 ? T_35 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_35 extends "" ? `${number}` : `${T_35}.${number}` : never : never) ? T_34 extends "" ? TKey_11 : `${T_34}.${TKey_11}` : never : never) | (Required<T_21>[TKey_11] extends infer T_36 ? T_36 extends Required<T_21>[TKey_11] ? T_36 extends any[] ? (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_37 ? T_37 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_37 extends "" ? `${number}` : `${T_37}.${number}` : never : never) extends infer T_38 ? T_38 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_39 ? T_39 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_39 extends "" ? `${number}` : `${T_39}.${number}` : never : never) ? T_38 extends "" ? TKey_11 : `${T_38}.${TKey_11}` : never : never) extends infer T_40 ? T_40 extends (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_41 ? T_41 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_41 extends "" ? `${number}` : `${T_41}.${number}` : never : never) extends infer T_42 ? T_42 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_43 ? T_43 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_43 extends "" ? `${number}` : `${T_43}.${number}` : never : never) ? T_42 extends "" ? TKey_11 : `${T_42}.${TKey_11}` : never : never) ? T_40 extends "" ? `${number}` : `${T_40}.${number}` : never : never : T_36 extends object ? { [TKey_12 in keyof T_36 & string]: T_36[TKey_12] extends Function ? never : (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_44 ? T_44 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_44 extends "" ? `${number}` : `${T_44}.${number}` : never : never) extends infer T_45 ? T_45 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_46 ? T_46 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_46 extends "" ? `${number}` : `${T_46}.${number}` : never : never) ? T_45 extends "" ? TKey_11 : `${T_45}.${TKey_11}` : never : never) extends infer T_47 ? T_47 extends (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_48 ? T_48 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_48 extends "" ? `${number}` : `${T_48}.${number}` : never : never) extends infer T_49 ? T_49 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_50 ? T_50 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_50 extends "" ? `${number}` : `${T_50}.${number}` : never : never) ? T_49 extends "" ? TKey_11 : `${T_49}.${TKey_11}` : never : never) ? T_47 extends "" ? TKey_12 : `${T_47}.${TKey_12}` : never : never; }[keyof T_36 & string] : never : never : never); }[keyof T_21 & string] : never : never : never) : T_19 extends object ? { [TKey_12 in keyof T_19 & string]: T_19[TKey_12] extends Function ? never : ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_33 ? T_33 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_33 extends "" ? TKey_12 : `${T_33}.${TKey_12}` : never : never) | (Required<T_19>[TKey_12] extends infer T_34 ? T_34 extends Required<T_19>[TKey_12] ? T_34 extends any[] ? (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_35 ? T_35 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_35 extends "" ? TKey_12 : `${T_35}.${TKey_12}` : never : never) extends infer T_36 ? T_36 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_37 ? T_37 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_37 extends "" ? TKey_12 : `${T_37}.${TKey_12}` : never : never) ? T_36 extends "" ? `${number}` : `${T_36}.${number}` : never : never) | (T_34[number] extends infer T_38 ? T_38 extends T_34[number] ? T_38 extends any[] ? (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_39 ? T_39 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_39 extends "" ? TKey_12 : `${T_39}.${TKey_12}` : never : never) extends infer T_40 ? T_40 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_41 ? T_41 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_41 extends "" ? TKey_12 : `${T_41}.${TKey_12}` : never : never) ? T_40 extends "" ? `${number}` : `${T_40}.${number}` : never : never) extends infer T_42 ? T_42 extends (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_43 ? T_43 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_43 extends "" ? TKey_12 : `${T_43}.${TKey_12}` : never : never) extends infer T_44 ? T_44 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_45 ? T_45 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_45 extends "" ? TKey_12 : `${T_45}.${TKey_12}` : never : never) ? T_44 extends "" ? `${number}` : `${T_44}.${number}` : never : never) ? T_42 extends "" ? `${number}` : `${T_42}.${number}` : never : never : T_38 extends object ? { [TKey_13 in keyof T_38 & string]: T_38[TKey_13] extends Function ? never : (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_46 ? T_46 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_46 extends "" ? TKey_12 : `${T_46}.${TKey_12}` : never : never) extends infer T_47 ? T_47 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_48 ? T_48 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_48 extends "" ? TKey_12 : `${T_48}.${TKey_12}` : never : never) ? T_47 extends "" ? `${number}` : `${T_47}.${number}` : never : never) extends infer T_49 ? T_49 extends (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_50 ? T_50 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_50 extends "" ? TKey_12 : `${T_50}.${TKey_12}` : never : never) extends infer T_51 ? T_51 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_52 ? T_52 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_52 extends "" ? TKey_12 : `${T_52}.${TKey_12}` : never : never) ? T_51 extends "" ? `${number}` : `${T_51}.${number}` : never : never) ? T_49 extends "" ? TKey_13 : `${T_49}.${TKey_13}` : never : never; }[keyof T_38 & string] : never : never : never) : T_34 extends object ? { [TKey_14 in keyof T_34 & string]: T_34[TKey_14] extends Function ? never : (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_46 ? T_46 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_46 extends "" ? TKey_12 : `${T_46}.${TKey_12}` : never : never) extends infer T_47 ? T_47 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_48 ? T_48 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_48 extends "" ? TKey_12 : `${T_48}.${TKey_12}` : never : never) ? T_47 extends "" ? TKey_14 : `${T_47}.${TKey_14}` : never : never) | (Required<T_34>[TKey_14] extends infer T_49 ? T_49 extends Required<T_34>[TKey_14] ? T_49 extends any[] ? (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_50 ? T_50 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_50 extends "" ? TKey_12 : `${T_50}.${TKey_12}` : never : never) extends infer T_51 ? T_51 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_52 ? T_52 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_52 extends "" ? TKey_12 : `${T_52}.${TKey_12}` : never : never) ? T_51 extends "" ? TKey_14 : `${T_51}.${TKey_14}` : never : never) extends infer T_53 ? T_53 extends (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_54 ? T_54 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_54 extends "" ? TKey_12 : `${T_54}.${TKey_12}` : never : never) extends infer T_55 ? T_55 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_56 ? T_56 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_56 extends "" ? TKey_12 : `${T_56}.${TKey_12}` : never : never) ? T_55 extends "" ? TKey_14 : `${T_55}.${TKey_14}` : never : never) ? T_53 extends "" ? `${number}` : `${T_53}.${number}` : never : never : T_49 extends object ? { [TKey_15 in keyof T_49 & string]: T_49[TKey_15] extends Function ? never : (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_57 ? T_57 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_57 extends "" ? TKey_12 : `${T_57}.${TKey_12}` : never : never) extends infer T_58 ? T_58 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_59 ? T_59 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_59 extends "" ? TKey_12 : `${T_59}.${TKey_12}` : never : never) ? T_58 extends "" ? TKey_14 : `${T_58}.${TKey_14}` : never : never) extends infer T_60 ? T_60 extends (((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_61 ? T_61 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_61 extends "" ? TKey_12 : `${T_61}.${TKey_12}` : never : never) extends infer T_62 ? T_62 extends ((TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) extends infer T_63 ? T_63 extends (TKey_4 extends "" ? TKey_9 : `${TKey_4}.${TKey_9}`) ? T_63 extends "" ? TKey_12 : `${T_63}.${TKey_12}` : never : never) ? T_62 extends "" ? TKey_14 : `${T_62}.${TKey_14}` : never : never) ? T_60 extends "" ? TKey_15 : `${T_60}.${TKey_15}` : never : never; }[keyof T_49 & string] : never : never : never); }[keyof T_34 & string] : never : never : never); }[keyof T_19 & string] : never : never : never); }[keyof T_4 & string] : never : never : never); }[keyof TValues & string] : never> | undefined;
30
+ field: FieldInstance<TValues>;
31
+ form: SchemxInstance<TValues>;
32
+ };
33
+ renderAfter: () => VNodeChild;
34
+ renderBefore: () => VNodeChild;
35
+ renderContent: () => VNodeChild;
36
+ renderError: () => VNodeChild;
37
+ renderLabel: () => VNodeChild;
38
+ };
39
+ export {};
40
+ //# sourceMappingURL=slot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slot.d.ts","sourceRoot":"","sources":["../../../src/components/Field/slot.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAGvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EACd,qBAAqB,EACrB,MAAM,EACP,MAAM,cAAc,CAAA;AAErB,0BAA0B;AAC1B,UAAU,wBAAwB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAChE,uBAAuB;IACvB,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAC/D,mBAAmB;IACnB,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;IAC7B,4BAA4B;IAC5B,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,CAAA;IAC7B,eAAe;IACf,WAAW,EAAE,gBAAgB,CAAA;IAC7B,yBAAyB;IACzB,cAAc,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IACnE,oBAAoB;IACpB,KAAK,EAAE,KAAK,CAAA;CACb;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACtE,OAAO,EAAE,wBAAwB,CAAC,OAAO,CAAC;wCAwBA,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;uBAgFzC,UAAU;wBAjCT,UAAU;yBAGT,UAAU;uBAiCZ,UAAU;uBAhEV,UAAU;EA0FnC"}
@@ -0,0 +1,46 @@
1
+ import { PropType, ClassValue, StyleValue, VNodeChild } from 'vue';
2
+ import { SchemxViewGroupSchema } from '@schemx/core';
3
+ /** Group Props。 */
4
+ export interface SchemxGroupProps {
5
+ schema: SchemxViewGroupSchema;
6
+ /** 父级传入的 class,会与内部和 Schema class 合并。 */
7
+ class?: ClassValue;
8
+ /** 父级传入的 style,会在 Schema style 之前合并。 */
9
+ style?: StyleValue;
10
+ }
11
+ declare const Group: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
12
+ schema: {
13
+ type: PropType<SchemxViewGroupSchema>;
14
+ required: true;
15
+ };
16
+ class: {
17
+ type: PropType<ClassValue>;
18
+ required: false;
19
+ default: undefined;
20
+ };
21
+ style: {
22
+ type: PropType<StyleValue>;
23
+ required: false;
24
+ default: undefined;
25
+ };
26
+ }>, () => VNodeChild, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
27
+ schema: {
28
+ type: PropType<SchemxViewGroupSchema>;
29
+ required: true;
30
+ };
31
+ class: {
32
+ type: PropType<ClassValue>;
33
+ required: false;
34
+ default: undefined;
35
+ };
36
+ style: {
37
+ type: PropType<StyleValue>;
38
+ required: false;
39
+ default: undefined;
40
+ };
41
+ }>> & Readonly<{}>, {
42
+ class: ClassValue;
43
+ style: StyleValue;
44
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
45
+ export default Group;
46
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Group/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAiD,QAAQ,EAAc,MAAM,KAAK,CAAA;AACzF,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAU7D,OAAO,KAAK,EAAE,qBAAqB,EAAoB,MAAM,cAAc,CAAA;AAE3E,mBAAmB;AACnB,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,qBAAqB,CAAA;IAC7B,yCAAyC;IACzC,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,wCAAwC;IACxC,KAAK,CAAC,EAAE,UAAU,CAAA;CACnB;AAED,QAAA,MAAM,KAAK;;cAMW,QAAQ,CAAC,qBAAqB,CAAC;;;;cAIL,QAAQ,CAAC,UAAU,CAAC;;;;;cAK7B,QAAQ,CAAC,UAAU,CAAC;;;;UAsC5C,UAAU;;cA/CH,QAAQ,CAAC,qBAAqB,CAAC;;;;cAIL,QAAQ,CAAC,UAAU,CAAC;;;;;cAK7B,QAAQ,CAAC,UAAU,CAAC;;;;;;;4EAoKzD,CAAA;AAEF,eAAe,KAAK,CAAA"}
@@ -0,0 +1,34 @@
1
+ import { Slots, VNodeChild } from 'vue';
2
+ import { SchemxViewGroupSchema, Values } from '@schemx/core';
3
+ /** Group 插槽渲染所需的状态与依赖。 */
4
+ interface GroupSlotRendererOptions<TValues extends Values = Values> {
5
+ /** 当前分组 ViewSchema。 */
6
+ schema: SchemxViewGroupSchema<TValues>;
7
+ /** 当前是否收起。 */
8
+ collapsed: boolean;
9
+ /** 当前分组是否可收起。 */
10
+ collapsible: boolean;
11
+ /** 当前分组是否禁用。 */
12
+ disabled: boolean;
13
+ /** 当前分组是否只读。 */
14
+ readonly: boolean;
15
+ /** 切换分组收起状态。 */
16
+ toggle: () => void;
17
+ /** 父组件传入的所有具名插槽。 */
18
+ slots: Slots;
19
+ /** 默认子节点渲染函数。 */
20
+ renderChildren: () => VNodeChild;
21
+ }
22
+ /**
23
+ * 创建 Group 各区域的插槽渲染函数。
24
+ *
25
+ * `Header` 完全接管 Header 内部内容;`Label` 只替换默认标题;`Content`
26
+ * 只替换 Body 内的默认子节点布局。
27
+ */
28
+ export declare function createGroupSlotRenderers<TValues extends Values = Values>(options: GroupSlotRendererOptions<TValues>): {
29
+ hasHeader: boolean;
30
+ renderBodyContent: () => VNodeChild;
31
+ renderHeaderContent: () => VNodeChild;
32
+ };
33
+ export {};
34
+ //# sourceMappingURL=slot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slot.d.ts","sourceRoot":"","sources":["../../../src/components/Group/slot.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAO5C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAEjE,0BAA0B;AAC1B,UAAU,wBAAwB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAChE,uBAAuB;IACvB,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAA;IACtC,cAAc;IACd,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB;IACjB,WAAW,EAAE,OAAO,CAAA;IACpB,gBAAgB;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,gBAAgB;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,gBAAgB;IAChB,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,oBAAoB;IACpB,KAAK,EAAE,KAAK,CAAA;IACZ,iBAAiB;IACjB,cAAc,EAAE,MAAM,UAAU,CAAA;CACjC;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACtE,OAAO,EAAE,wBAAwB,CAAC,OAAO,CAAC;;6BAyDZ,UAAU;+BA3BR,UAAU;EAwC3C"}
@@ -1,2 +1,4 @@
1
1
  export { provideSchemxAppConfig, getSchemxAppConfig } from './appConfig';
2
+ export { provideSchemxConfigProvider, getSchemxConfigProvider } from './providerConfig';
3
+ export { mergeVueSchemxConfig } from './vueConfig';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACxE,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { ComputedRef } from 'vue';
2
+ import { SchemxConfig } from '@schemx/core';
3
+ /**
4
+ * 向当前组件的后代提供合并后的组件树级配置。
5
+ *
6
+ * @param config - 当前 Provider 的配置快照。
7
+ */
8
+ export declare function provideSchemxConfigProvider(config: ComputedRef<SchemxConfig>): void;
9
+ /**
10
+ * 读取最近祖先 ConfigProvider 的配置。
11
+ *
12
+ * @returns 最近 Provider 的配置;不在组件 setup 上下文中时返回 undefined。
13
+ */
14
+ export declare function getSchemxConfigProvider(): SchemxConfig | undefined;
15
+ //# sourceMappingURL=providerConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerConfig.d.ts","sourceRoot":"","sources":["../../src/config/providerConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,KAAK,CAAA;AAIpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAOhD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,IAAI,CAQnF;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,YAAY,GAAG,SAAS,CAMlE"}
@@ -0,0 +1,12 @@
1
+ import { SchemxConfig, Values } from '@schemx/core';
2
+ /**
3
+ * 按 Vue 适配层优先级合并一个 Form 的显式配置。
4
+ *
5
+ * Core 模块级配置和内置默认值由后续 createForm() 继续处理。
6
+ *
7
+ * @param localConfig - 当前 Form 或 useForm() 的显式配置。
8
+ * @param fallbackConfig - Vue 层更低优先级的回退配置。
9
+ * @returns 已合并 Provider、App 和 Vue 默认 Registry 的配置。
10
+ */
11
+ export declare function mergeVueSchemxConfig<TValues extends Values = Values>(localConfig: SchemxConfig<TValues>, fallbackConfig?: SchemxConfig<TValues>): SchemxConfig<TValues>;
12
+ //# sourceMappingURL=vueConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vueConfig.d.ts","sourceRoot":"","sources":["../../src/config/vueConfig.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAExD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAClE,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,EAClC,cAAc,GAAE,YAAY,CAAC,OAAO,CAAM,GACzC,YAAY,CAAC,OAAO,CAAC,CAavB"}
package/dist/form.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { App } from 'vue';
2
- import { default as FormItem } from './components/FormItem';
2
+ import { default as Field } from './components/Field';
3
3
  import { default as SchemxForm } from './formRuntime.js';
4
4
  import { SchemxConfig } from '@schemx/core';
5
5
  /**
@@ -30,7 +30,7 @@ export interface SchemxInstallOptions extends SchemxConfig {
30
30
  export declare function withInstall<TComponent extends object, TExtras extends Record<string, unknown>>(comp: TComponent, extra: TExtras): TComponent & TExtras;
31
31
  export type SchemxFormPlugin = typeof SchemxForm & {
32
32
  install: (app: App, options?: SchemxInstallOptions) => void;
33
- FormItem: typeof FormItem;
33
+ Field: typeof Field;
34
34
  };
35
35
  declare const SchemxFormExport: SchemxFormPlugin;
36
36
  export default SchemxFormExport;
@@ -1 +1 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAE9B,OAAO,QAAQ,MAAM,uBAAuB,CAAA;AAE5C,OAAO,UAAU,MAAM,kBAAkB,CAAA;AAEzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEhD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,oBAAqB,SAAQ,YAAY;CAAG;AAE7D;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,UAAU,SAAS,MAAM,EACzB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GACK,UAAU,GAAG,OAAO,CAC1D;AAED,MAAM,MAAM,gBAAgB,GAAG,OAAO,UAAU,GAAG;IACjD,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAA;IAC3D,QAAQ,EAAE,OAAO,QAAQ,CAAA;CAC1B,CAAA;AAED,QAAA,MAAM,gBAAgB,EAQL,gBAAgB,CAAA;AAEjC,eAAe,gBAAgB,CAAA"}
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAE9B,OAAO,KAAK,MAAM,oBAAoB,CAAA;AAEtC,OAAO,UAAU,MAAM,kBAAkB,CAAA;AAEzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEhD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,oBAAqB,SAAQ,YAAY;CAAG;AAE7D;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,UAAU,SAAS,MAAM,EACzB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GACK,UAAU,GAAG,OAAO,CAC1D;AAED,MAAM,MAAM,gBAAgB,GAAG,OAAO,UAAU,GAAG;IACjD,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAA;IAC3D,KAAK,EAAE,OAAO,KAAK,CAAA;CACpB,CAAA;AAED,QAAA,MAAM,gBAAgB,EAQL,gBAAgB,CAAA;AAEjC,eAAe,gBAAgB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"withRemoteOptions.d.ts","sourceRoot":"","sources":["../../src/hocs/withRemoteOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAwD,MAAM,KAAK,CAAA;AAQrF;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,cAAc;IACd,OAAO,EAAE,OAAO,EAAE,CAAA;IAClB,WAAW;IACX,OAAO,EAAE,OAAO,CAAA;CACjB;AAiBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,iBAAiB,CAAC,gBAAgB,EAAE,SAAS,GAAG,SAAS,CAiCxE;AAED,eAAe,iBAAiB,CAAA"}
1
+ {"version":3,"file":"withRemoteOptions.d.ts","sourceRoot":"","sources":["../../src/hocs/withRemoteOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAwD,MAAM,KAAK,CAAA;AAOrF;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,cAAc;IACd,OAAO,EAAE,OAAO,EAAE,CAAA;IAClB,WAAW;IACX,OAAO,EAAE,OAAO,CAAA;CACjB;AAiBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,iBAAiB,CAAC,gBAAgB,EAAE,SAAS,GAAG,SAAS,CAiCxE;AAED,eAAe,iBAAiB,CAAA"}
@@ -5,8 +5,8 @@
5
5
  */
6
6
  /** useForm - 表单状态管理 */
7
7
  export { useForm } from './useForm';
8
- /** Vue Form Facade - 在 Vue effect 中可追踪的 Form 实例。 */
9
- export { getCoreForm, type VueSchemxInstance } from '../formBridge';
8
+ /** Vue Form Instance - 在 Vue effect 中可追踪的 Form 实例。 */
9
+ export type { VueSchemxInstance } from '../bridge';
10
10
  /** createFormContext - 表单上下文注入与消费 */
11
11
  export { createFormContext, useFormContext } from './provideFormContext';
12
12
  /** useField - 单字段控制 */
@@ -24,5 +24,5 @@ export { useStableRef } from './useStableRef';
24
24
  /** useViewSchemas - ViewSchemas Vue 桥接 */
25
25
  export { useViewSchemas } from './useViewSchemas';
26
26
  /** useFormSelector - 表单值 Selector Vue 桥接 */
27
- export { useFormSelector, type UseFormSelectorOptions, } from './useFormSelector';
27
+ export { useFormSelector, type UseFormSelectorOptions } from './useFormSelector';
28
28
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,uBAAuB;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,oDAAoD;AACpD,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEnE,qCAAqC;AACrC,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAExE,uBAAuB;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,sCAAsC;AACtC,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAE3E,wBAAwB;AACxB,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEjF,6BAA6B;AAC7B,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAEzE,wCAAwC;AACxC,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,KAAK,gBAAgB,GACtB,MAAM,4BAA4B,CAAA;AAEnC,uCAAuC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,0CAA0C;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,4CAA4C;AAC5C,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,GAC5B,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,uBAAuB;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,sDAAsD;AACtD,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAElD,qCAAqC;AACrC,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAExE,uBAAuB;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,sCAAsC;AACtC,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAE3E,wBAAwB;AACxB,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEjF,6BAA6B;AAC7B,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAEzE,wCAAwC;AACxC,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,KAAK,gBAAgB,GACtB,MAAM,4BAA4B,CAAA;AAEnC,uCAAuC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,0CAA0C;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,4CAA4C;AAC5C,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,mBAAmB,CAAA"}
@@ -3,7 +3,7 @@ import { Values } from '@schemx/core';
3
3
  /**
4
4
  * 向后代组件提供当前字段实例。
5
5
  *
6
- * 应在创建字段实例的组件 setup() 同步阶段调用,通常由 FormItem
6
+ * 应在创建字段实例的组件 setup() 同步阶段调用,通常由 Field
7
7
  * 在调用 useField() 后使用,使字段插槽或自定义子组件能够读取同一实例。
8
8
  *
9
9
  * @param field - useField() 返回的字段实例
@@ -13,7 +13,7 @@ import { Values } from '@schemx/core';
13
13
  *
14
14
  * @example
15
15
  * ```typescript
16
- * // FormItem
16
+ * // Field
17
17
  * const field = useField('date')
18
18
  * createFieldContext(field)
19
19
  *
@@ -1,59 +1,26 @@
1
1
  import { InjectionKey } from 'vue';
2
- import { VueSchemxInstance } from '../formBridge';
2
+ import { VueFormRuntime, VueSchemxInstance } from '../bridge';
3
3
  import { SchemxInstance, Values } from '@schemx/core';
4
4
  type FormContextInstance = VueSchemxInstance<any>;
5
- /**
6
- * SchemxInstance 在 Vue provide/inject 中使用的注入 key。
7
- *
8
- * 该 key 只应与同一份包代码导出的 createFormContext() 和 useFormContext()
9
- * 配套使用;重复安装不兼容版本的包不会共享此上下文。
10
- */
5
+ /** SchemxInstance 在 Vue provide/inject 中使用的注入 key。 */
11
6
  export declare const SCHEMX_FORM_INSTANCE_KEY: InjectionKey<FormContextInstance>;
12
- /**
13
- * 旧版表单实例注入 key。
14
- *
15
- * @deprecated 请使用 SCHEMX_FORM_INSTANCE_KEY。该别名仅用于兼容旧测试和旧适配代码。
16
- */
7
+ /** 旧版表单实例注入 key,仅保留为内部适配别名。 */
17
8
  export declare const FORM_INSTANCE_KEY: InjectionKey<FormContextInstance>;
18
9
  /**
19
- * 向当前组件的后代组件提供表单实例。
20
- *
21
- * 必须在组件 setup() 的同步执行阶段调用;不要放入 onMounted、nextTick、
22
- * Promise 或其他异步回调中,否则 Vue 无法把上下文关联到当前组件实例。
23
- *
24
- * @typeParam TValues - 表单值类型
25
- * @param instance - 要提供给后代组件的表单实例
10
+ * 向当前组件的后代组件提供表单实例和共享 Runtime。
26
11
  *
27
- * @remarks
28
- * 该函数不接管实例所有权,也不会在组件卸载时销毁实例。
29
- *
30
- * @example
31
- * ```ts
32
- * const form = props.form ?? useForm(options)
33
- *
34
- * // 无论 form 来自外部还是内部,都统一注册上下文。
35
- * createFormContext(form)
36
- * ```
12
+ * @param instance - 要提供给后代组件的 Core Form 或 Vue Instance。
13
+ * @returns 当前 Runtime 对应的 Vue Instance。
37
14
  */
38
- export declare function createFormContext<TValues extends Values = Values>(instance: SchemxInstance<TValues>): VueSchemxInstance<TValues>;
15
+ export declare function createFormContext<TValues extends Values = Values>(instance: SchemxInstance<TValues> | VueSchemxInstance<TValues>): VueSchemxInstance<TValues>;
16
+ /** 获取最近祖先提供的 Vue Instance。 */
17
+ export declare function useFormContext<TValues extends Values = Values>(): VueSchemxInstance<TValues>;
39
18
  /**
40
- * 获取最近祖先组件提供的表单实例。
41
- *
42
- * 该函数只能读取祖先组件注册的上下文,不能读取当前组件自身或后代组件
43
- * 调用 createFormContext() 提供的值。通常由 useField()、useWatch() 等其他
44
- * 表单 hook 间接调用。
19
+ * 获取当前表单的内部 Runtime。
45
20
  *
46
- * @typeParam TValues - 表单值类型
47
- * @returns 当前组件所属表单树中的 SchemxInstance
48
- *
49
- * @throws Error 当前组件不在已注册表单实例上下文的后代组件树中时抛出
50
- *
51
- * @example
52
- * ```ts
53
- * const form = useFormContext<FormValues>()
54
- * form.setFieldValue("name", "Schemx")
55
- * ```
21
+ * 正常路径直接读取 Provider 已持有的 Runtime;测试或旧适配代码只提供
22
+ * `SCHEMX_FORM_INSTANCE_KEY` 时,才为当前 scope 建立一个临时 owner。
56
23
  */
57
- export declare function useFormContext<TValues extends Values = Values>(): VueSchemxInstance<TValues>;
24
+ export declare function useFormRuntimeContext<TValues extends Values = Values>(): VueFormRuntime<TValues>;
58
25
  export {};
59
26
  //# sourceMappingURL=provideFormContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provideFormContext.d.ts","sourceRoot":"","sources":["../../src/hooks/provideFormContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAA0B,KAAK,YAAY,EAAW,MAAM,KAAK,CAAA;AAExE,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAA;AAEtB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAK1D,KAAK,mBAAmB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAgC,YAAY,CAC/E,mBAAmB,CACpB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,mCAA2B,CAAA;AAEzD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/D,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,GAChC,iBAAiB,CAAC,OAAO,CAAC,CAQ5B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAC5B,OAAO,SAAS,MAAM,GAAG,MAAM,KAC5B,iBAAiB,CAAC,OAAO,CAAC,CAW9B"}
1
+ {"version":3,"file":"provideFormContext.d.ts","sourceRoot":"","sources":["../../src/hooks/provideFormContext.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAU,KAAK,YAAY,EAA2B,MAAM,KAAK,CAAA;AAExE,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACvB,MAAM,WAAW,CAAA;AAElB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAI1D,KAAK,mBAAmB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;AAIjD,sDAAsD;AACtD,eAAO,MAAM,wBAAwB,EAEhC,YAAY,CAAC,mBAAmB,CAAC,CAAA;AAOtC,+BAA+B;AAC/B,eAAO,MAAM,iBAAiB,mCAA2B,CAAA;AAEzD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/D,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAC7D,iBAAiB,CAAC,OAAO,CAAC,CAW5B;AAED,8BAA8B;AAC9B,wBAAgB,cAAc,CAC5B,OAAO,SAAS,MAAM,GAAG,MAAM,KAC5B,iBAAiB,CAAC,OAAO,CAAC,CAW9B;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,SAAS,MAAM,GAAG,MAAM,KAC5B,cAAc,CAAC,OAAO,CAAC,CAc3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDictionary.d.ts","sourceRoot":"","sources":["../../src/hooks/useDictionary.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAa,GAAG,EAAmB,MAAM,KAAK,CAAA;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAK1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAEpD,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAEhF;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,OAAO,GAAG,OAAO;IACpD,uBAAuB;IACvB,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;IACpB,kBAAkB;IAClB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACrB,kBAAkB;IAClB,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC,CAAA;IAC7B,eAAe;IACf,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B,qBAAqB;IACrB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,8BAA8B;IAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CAClC;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,CAAC,OAAO,GAAG,OAAO,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAA;AAElF;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAIlD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,aAAa,GACxB,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/B,KAAK,SAAS,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,EACnD,SAAS,GAAG,OAAO,EACnB,OAAO,GAAG,OAAO,EAEjB,SAAS,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EACtD,YAAY,KAAK,KAChB,mBAAmB,CAAC,OAAO,CA6I7B,CAAA;AAED,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"useDictionary.d.ts","sourceRoot":"","sources":["../../src/hooks/useDictionary.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAA6B,GAAG,EAAmB,MAAM,KAAK,CAAA;AAErE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAK1D,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,EAAE,MAAM,cAAc,CAAA;AAEpE,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAEhF;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,OAAO,GAAG,OAAO;IACpD,uBAAuB;IACvB,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;IACpB,kBAAkB;IAClB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACrB,kBAAkB;IAClB,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC,CAAA;IAC7B,eAAe;IACf,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B,qBAAqB;IACrB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,8BAA8B;IAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CAClC;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,CAAC,OAAO,GAAG,OAAO,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAA;AAElF;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAIlD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,aAAa,GACxB,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/B,KAAK,SAAS,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,EACnD,SAAS,GAAG,OAAO,EACnB,OAAO,GAAG,OAAO,EAEjB,SAAS,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EACtD,YAAY,KAAK,KAChB,mBAAmB,CAAC,OAAO,CA6K7B,CAAA;AAoDD,eAAe,aAAa,CAAA"}
@@ -1,5 +1,5 @@
1
- import { NamePath, Values } from '@schemx/core';
2
1
  import { FieldInstance } from '../types/field';
2
+ import { NamePath, Values } from '@schemx/core';
3
3
  /**
4
4
  * 获取单个字段的控制能力。
5
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"useField.d.ts","sourceRoot":"","sources":["../../src/hooks/useField.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgBH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAwCnD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,SAAS,MAAM,GAAG,MAAM,EACtD,MAAM,QAAQ,CAAC,OAAO,CAAC,KACtB,aAAa,CAAC,OAAO,CAOvB,CAAA;AAED,eAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"useField.d.ts","sourceRoot":"","sources":["../../src/hooks/useField.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,EAAE,MAAM,cAAc,CAAA;AA+CpE;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,SAAS,MAAM,GAAG,MAAM,EACtD,MAAM,QAAQ,CAAC,OAAO,CAAC,KACtB,aAAa,CAAC,OAAO,CAQvB,CAAA;AAED,eAAe,QAAQ,CAAA"}
@@ -1,10 +1,10 @@
1
- import { VueSchemxInstance } from '../formBridge';
1
+ import { VueSchemxInstance } from '../bridge';
2
2
  import { CreateFormOptions, NamePath, Values } from '@schemx/core';
3
3
  /**
4
4
  * useForm 配置选项。
5
5
  *
6
6
  * 当前与 core 层 CreateFormOptions 保持一致,并在 Vue 层自动补充默认的
7
- * rendererRegistry 和 validationRuleRegistry。保留独立类型用于后续扩展
7
+ * rendererRegistry 和 presetRuleRegistry。保留独立类型用于后续扩展
8
8
  * Vue 专属配置,而不污染 core 层接口。
9
9
  *
10
10
  * @typeParam TValues - 表单值类型
@@ -15,7 +15,7 @@ export interface UseFormOptions<TValues extends Values> extends CreateFormOption
15
15
  * 创建由当前 Vue effect scope 持有的表单实例。
16
16
  *
17
17
  * useForm 只负责以下职责:
18
- * 1. 合并表单显式、App 安装和 Vue 层默认配置;
18
+ * 1. 合并表单显式、组件树 Provider、App 安装和 Vue 层默认配置;
19
19
  * 2. 同步创建 SchemxInstance;
20
20
  * 3. 在当前 effect scope 销毁时调用 instance.destroy()。
21
21
  *
@@ -1 +1 @@
1
- {"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../src/hooks/useForm.ts"],"names":[],"mappings":"AAcA,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAA;AAItB,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAEvE;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc,CAAC,OAAO,SAAS,MAAM,CAAE,SAAQ,iBAAiB,CAC/E,OAAO,EACP,QAAQ,CAAC,OAAO,CAAC,CAClB;CAAG;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACrD,OAAO,GAAE,cAAc,CAAC,OAAO,CAAM,GACpC,iBAAiB,CAAC,OAAO,CAAC,CA8B5B"}
1
+ {"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../src/hooks/useForm.ts"],"names":[],"mappings":"AAaA,OAAO,EAAyB,KAAK,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAGzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAEvE;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc,CAAC,OAAO,SAAS,MAAM,CAAE,SAAQ,iBAAiB,CAC/E,OAAO,EACP,QAAQ,CAAC,OAAO,CAAC,CAClB;CAAG;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACrD,OAAO,GAAE,cAAc,CAAC,OAAO,CAAM,GACpC,iBAAiB,CAAC,OAAO,CAAC,CAwB5B"}
@@ -9,6 +9,10 @@ export interface UseFormSelectorOptions<TSelected> {
9
9
  * 默认使用 `Object.is`。
10
10
  */
11
11
  equals?: (previous: TSelected, next: TSelected) => boolean;
12
+ /**
13
+ * Vue watcher 的刷新时机;默认 `sync` 以保持现有表单同步语义。
14
+ */
15
+ flush?: "sync" | "pre" | "post";
12
16
  }
13
17
  /**
14
18
  * 将 Core 表单值按 selector 映射为 Vue 只读浅引用。
@@ -1 +1 @@
1
- {"version":3,"file":"useFormSelector.d.ts","sourceRoot":"","sources":["../../src/hooks/useFormSelector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAIrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAE1D;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,SAAS;IAC/C;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,KAAK,OAAO,CAAA;CAC3D;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/B,SAAS,GAAG,OAAO,EAEnB,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,EAC7B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,SAAS,EAClD,OAAO,GAAE,sBAAsB,CAAC,SAAS,CAAM,GAC9C,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CA6BjC;AAED,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"useFormSelector.d.ts","sourceRoot":"","sources":["../../src/hooks/useFormSelector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAIrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAE1D;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,SAAS;IAC/C;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,KAAK,OAAO,CAAA;IAE1D;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,CAAA;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,OAAO,EAClF,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,EAC7B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,SAAS,EAClD,OAAO,GAAE,sBAAsB,CAAC,SAAS,CAAM,GAC9C,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAgCjC;AAED,eAAe,eAAe,CAAA"}
@@ -1,40 +1,8 @@
1
1
  import { ComputedRef, ShallowRef } from 'vue';
2
2
  import { SchemxInstance, SchemxViewSchema, Values } from '@schemx/core';
3
- /**
4
- * 将表单 ViewSchema 映射为共享的 Vue 响应式引用。
5
- *
6
- * 当前作用域释放一个桥接使用者;所有使用者都释放后才取消 Core 订阅。
7
- *
8
- * @typeParam TValues - 表单值类型。
9
- * @param form - 要订阅的表单实例。
10
- * @returns 当前 ViewSchema 列表的共享响应式浅引用;调用方不应直接改写其值。
11
- *
12
- * @example
13
- * ```ts
14
- * const form = useForm()
15
- * const viewSchemas = useViewSchemas(form)
16
- *
17
- * watchEffect(() => console.log(viewSchemas.value))
18
- * ```
19
- */
3
+ /** 获取当前表单共享的 ViewSchema 列表。 */
20
4
  export declare function useViewSchemas<TValues extends Values = Values>(form: SchemxInstance<TValues>): ShallowRef<readonly SchemxViewSchema<TValues>[]>;
21
- /**
22
- * 获取指定 key 的响应式 ViewSchema,并复用当前表单的共享订阅。
23
- *
24
- * @typeParam TValues - 表单值类型。
25
- * @param form - 要读取的表单实例。
26
- * @param getKey - 返回当前 schema key 的响应式 getter。
27
- * @returns 对应的最新 ViewSchema;不存在时返回 undefined。
28
- *
29
- * @example
30
- * ```ts
31
- * const schema = useViewSchema(form, () => fieldKey)
32
- *
33
- * watchEffect(() => {
34
- * console.log(schema.value?.label)
35
- * })
36
- * ```
37
- */
5
+ /** 获取当前 key 对应的共享 ViewSchema。 */
38
6
  export declare function useViewSchema<TValues extends Values = Values>(form: SchemxInstance<TValues>, getKey: () => string): ComputedRef<SchemxViewSchema<TValues> | undefined>;
39
7
  export default useViewSchemas;
40
8
  //# sourceMappingURL=useViewSchemas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useViewSchemas.d.ts","sourceRoot":"","sources":["../../src/hooks/useViewSchemas.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAElD,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,MAAM,EACZ,MAAM,cAAc,CAAA;AA+BrB;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC5D,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,GAC5B,UAAU,CAAC,SAAS,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,CAIlD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC3D,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,EAC7B,MAAM,EAAE,MAAM,MAAM,GACnB,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,CAIpD;AAqGD,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"useViewSchemas.d.ts","sourceRoot":"","sources":["../../src/hooks/useViewSchemas.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAIlD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAE5E,+BAA+B;AAC/B,wBAAgB,cAAc,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC5D,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,GAC5B,UAAU,CAAC,SAAS,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,CAQlD;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC3D,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,EAC7B,MAAM,EAAE,MAAM,MAAM,GACnB,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,CAUpD;AAED,eAAe,cAAc,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useWatch.d.ts","sourceRoot":"","sources":["../../src/hooks/useWatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AASH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,cAAc,CAAA;AAErB;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,OAAO,SAAS,MAAM,EAC7C,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAAA;AACb;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,OAAO,SAAS,MAAM,EAC7C,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EACvB,QAAQ,EAAE,kBAAkB,CAAC,OAAO,CAAC,EACrC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAAA;AACb;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,OAAO,SAAS,MAAM,EAC7C,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAC1B,QAAQ,EAAE,mBAAmB,CAAC,OAAO,CAAC,EACtC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAAA;AA2Bb;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC3D,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EACvB,QAAQ,EAAE,kBAAkB,CAAC,OAAO,CAAC,EACrC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAEZ;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,OAAO,SAAS,MAAM,EACnD,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAC1B,QAAQ,EAAE,mBAAmB,CAAC,OAAO,CAAC,EACtC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAEZ;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACzD,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAEZ;AAED,eAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"useWatch.d.ts","sourceRoot":"","sources":["../../src/hooks/useWatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAQH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,cAAc,CAAA;AAErB;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,OAAO,SAAS,MAAM,EAC7C,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAAA;AACb;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,OAAO,SAAS,MAAM,EAC7C,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EACvB,QAAQ,EAAE,kBAAkB,CAAC,OAAO,CAAC,EACrC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAAA;AACb;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,OAAO,SAAS,MAAM,EAC7C,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAC1B,QAAQ,EAAE,mBAAmB,CAAC,OAAO,CAAC,EACtC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAAA;AA2Bb;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC3D,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EACvB,QAAQ,EAAE,kBAAkB,CAAC,OAAO,CAAC,EACrC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAEZ;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,OAAO,SAAS,MAAM,EACnD,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAC1B,QAAQ,EAAE,mBAAmB,CAAC,OAAO,CAAC,EACtC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAEZ;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACzD,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAEZ;AAED,eAAe,QAAQ,CAAA"}