@silver-formily/vue 2.3.3 → 2.3.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 (103) hide show
  1. package/esm/components/ArrayField.d.ts +67 -60
  2. package/esm/components/ArrayField.mjs +23 -23
  3. package/esm/components/ArrayField.mjs.map +1 -1
  4. package/esm/components/ExpressionScope.d.ts +21 -16
  5. package/esm/components/ExpressionScope.mjs +22 -24
  6. package/esm/components/ExpressionScope.mjs.map +1 -1
  7. package/esm/components/Field.d.ts +67 -60
  8. package/esm/components/Field.mjs +23 -23
  9. package/esm/components/Field.mjs.map +1 -1
  10. package/esm/components/FormConsumer.d.ts +9 -4
  11. package/esm/components/FormConsumer.mjs +17 -18
  12. package/esm/components/FormConsumer.mjs.map +1 -1
  13. package/esm/components/FormProvider.d.ts +21 -16
  14. package/esm/components/FormProvider.mjs +26 -26
  15. package/esm/components/FormProvider.mjs.map +1 -1
  16. package/esm/components/ObjectField.d.ts +68 -60
  17. package/esm/components/ObjectField.mjs +23 -23
  18. package/esm/components/ObjectField.mjs.map +1 -1
  19. package/esm/components/ReactiveField.mjs +103 -83
  20. package/esm/components/ReactiveField.mjs.map +1 -1
  21. package/esm/components/RecursionField.d.ts +142 -134
  22. package/esm/components/RecursionField.mjs +123 -125
  23. package/esm/components/RecursionField.mjs.map +1 -1
  24. package/esm/components/SchemaField.d.ts +3041 -3030
  25. package/esm/components/SchemaField.mjs +104 -99
  26. package/esm/components/SchemaField.mjs.map +1 -1
  27. package/esm/components/VoidField.d.ts +48 -42
  28. package/esm/components/VoidField.mjs +23 -23
  29. package/esm/components/VoidField.mjs.map +1 -1
  30. package/esm/components/index.d.ts +9 -9
  31. package/esm/components/index.mjs +10 -21
  32. package/esm/hooks/index.d.ts +5 -5
  33. package/esm/hooks/index.mjs +6 -13
  34. package/esm/hooks/useAttach.mjs +21 -13
  35. package/esm/hooks/useAttach.mjs.map +1 -1
  36. package/esm/hooks/useField.d.ts +8 -3
  37. package/esm/hooks/useField.mjs +9 -8
  38. package/esm/hooks/useField.mjs.map +1 -1
  39. package/esm/hooks/useFieldSchema.d.ts +8 -1
  40. package/esm/hooks/useFieldSchema.mjs +9 -8
  41. package/esm/hooks/useFieldSchema.mjs.map +1 -1
  42. package/esm/hooks/useForm.d.ts +8 -3
  43. package/esm/hooks/useForm.mjs +9 -8
  44. package/esm/hooks/useForm.mjs.map +1 -1
  45. package/esm/hooks/useFormEffects.d.ts +7 -2
  46. package/esm/hooks/useFormEffects.mjs +18 -15
  47. package/esm/hooks/useFormEffects.mjs.map +1 -1
  48. package/esm/hooks/useInjectionCleaner.mjs +8 -7
  49. package/esm/hooks/useInjectionCleaner.mjs.map +1 -1
  50. package/esm/hooks/useParentForm.d.ts +8 -3
  51. package/esm/hooks/useParentForm.mjs +18 -11
  52. package/esm/hooks/useParentForm.mjs.map +1 -1
  53. package/esm/index.d.ts +19 -4
  54. package/esm/index.mjs +20 -42
  55. package/esm/shared/connect.d.ts +10 -5
  56. package/esm/shared/connect.mjs +69 -63
  57. package/esm/shared/connect.mjs.map +1 -1
  58. package/esm/shared/context.d.ts +15 -10
  59. package/esm/shared/context.mjs +11 -10
  60. package/esm/shared/context.mjs.map +1 -1
  61. package/esm/shared/index.d.ts +2 -2
  62. package/esm/shared/index.mjs +3 -14
  63. package/esm/types/index.d.ts +72 -70
  64. package/esm/types/validator.d.ts +39 -35
  65. package/esm/utils/fieldProps.mjs +53 -52
  66. package/esm/utils/fieldProps.mjs.map +1 -1
  67. package/esm/utils/getRawComponent.mjs +16 -12
  68. package/esm/utils/getRawComponent.mjs.map +1 -1
  69. package/esm/utils/reactiveFieldHelpers.mjs +116 -94
  70. package/esm/utils/reactiveFieldHelpers.mjs.map +1 -1
  71. package/esm/utils/recursionFieldProps.mjs +14 -13
  72. package/esm/utils/recursionFieldProps.mjs.map +1 -1
  73. package/esm/utils/resolveSchemaProps.mjs +13 -10
  74. package/esm/utils/resolveSchemaProps.mjs.map +1 -1
  75. package/esm/utils/runtimeProps.d.ts +10 -7
  76. package/esm/utils/runtimeProps.mjs +15 -15
  77. package/esm/utils/runtimeProps.mjs.map +1 -1
  78. package/esm/utils/schemaFieldProps.mjs +63 -62
  79. package/esm/utils/schemaFieldProps.mjs.map +1 -1
  80. package/package.json +13 -10
  81. package/esm/components/ReactiveField.d.ts +0 -16
  82. package/esm/components/index.mjs.map +0 -1
  83. package/esm/global.d.d.ts +0 -1
  84. package/esm/global.d.mjs +0 -2
  85. package/esm/global.d.mjs.map +0 -1
  86. package/esm/hooks/index.mjs.map +0 -1
  87. package/esm/hooks/useAttach.d.ts +0 -7
  88. package/esm/hooks/useInjectionCleaner.d.ts +0 -2
  89. package/esm/index.mjs.map +0 -1
  90. package/esm/shared/index.mjs.map +0 -1
  91. package/esm/types/index.mjs +0 -2
  92. package/esm/types/index.mjs.map +0 -1
  93. package/esm/types/validator.mjs +0 -2
  94. package/esm/types/validator.mjs.map +0 -1
  95. package/esm/utils/fieldProps.d.ts +0 -52
  96. package/esm/utils/getRawComponent.d.ts +0 -8
  97. package/esm/utils/reactiveFieldHelpers.d.ts +0 -17
  98. package/esm/utils/recursionFieldProps.d.ts +0 -67
  99. package/esm/utils/resolveSchemaProps.d.ts +0 -1
  100. package/esm/utils/schemaFieldProps.d.ts +0 -232
  101. package/esm/utils/slotMap.d.ts +0 -1
  102. package/esm/utils/slotMap.mjs +0 -2
  103. package/esm/utils/slotMap.mjs.map +0 -1
@@ -1,101 +1,106 @@
1
- import { Schema as f } from "@formily/json-schema";
2
- import { lazyMerge as g } from "@formily/shared";
3
- import { defineComponent as u, computed as h, provide as i, h as l, Fragment as y, inject as A, shallowRef as j, watch as I } from "vue";
4
- import "@formily/core";
5
- import "@silver-formily/reactive-vue";
6
- import { SchemaMarkupSymbol as S, SchemaOptionsSymbol as M, SchemaExpressionScopeSymbol as N } from "../shared/context.mjs";
7
- import { resolveSchemaProps as p } from "../utils/resolveSchemaProps.mjs";
8
- import { schemaFieldProps as k, markupSchemaProps as v } from "../utils/schemaFieldProps.mjs";
9
- import D from "./RecursionField.mjs";
10
- const b = {
11
- nonameId: 0
12
- };
13
- function P() {
14
- return `NO_NAME_FIELD_$${b.nonameId++}`;
1
+ import { SchemaExpressionScopeSymbol, SchemaMarkupSymbol, SchemaOptionsSymbol } from "../shared/context.mjs";
2
+ import "../shared/index.mjs";
3
+ import RecursionField from "./RecursionField.mjs";
4
+ import { resolveSchemaProps } from "../utils/resolveSchemaProps.mjs";
5
+ import { markupSchemaProps, schemaFieldProps } from "../utils/schemaFieldProps.mjs";
6
+ import { Fragment, computed, defineComponent, h, inject, provide, shallowRef, watch } from "vue";
7
+ import { lazyMerge } from "@formily/shared";
8
+ import { Schema } from "@formily/json-schema";
9
+ //#region src/components/SchemaField.ts
10
+ const env = { nonameId: 0 };
11
+ function getRandomName() {
12
+ return `NO_NAME_FIELD_$${env.nonameId++}`;
15
13
  }
16
- function C(d = {}) {
17
- const R = u({
18
- name: "SchemaField",
19
- inheritAttrs: !1,
20
- props: k,
21
- setup(a, { slots: r }) {
22
- const e = h(
23
- () => f.isSchemaInstance(a.schema) ? a.schema : new f({
24
- type: "object",
25
- ...a.schema
26
- })
27
- ), m = h(
28
- () => g({}, d.scope ?? {}, a.scope ?? {})
29
- ), n = h(() => ({
30
- ...d,
31
- components: {
32
- ...d.components,
33
- ...a.components
34
- }
35
- }));
36
- return i(S, e), i(M, n), i(N, m), () => {
37
- b.nonameId = 0;
38
- const s = r.default?.() ?? [], o = l(D, {
39
- ...a,
40
- schema: e.value
41
- });
42
- return l(y, null, [...s, o]);
43
- };
44
- }
45
- }), F = u({
46
- name: "MarkupField",
47
- props: {
48
- type: String,
49
- ...v
50
- },
51
- setup(a, { slots: r }) {
52
- const e = A(S, null);
53
- let m = () => null;
54
- if (e?.value) {
55
- const n = a.name || P(), s = (c) => e.value.items ? e.value.addProperty(n, c) : e.value.setItems(p(a)), o = j(e.value);
56
- I(
57
- e,
58
- () => {
59
- if (e.value.type === "object" || e.value.type === "void")
60
- o.value = e.value.addProperty(n, p(a));
61
- else if (e.value.type === "array") {
62
- const c = s(p(a));
63
- o.value = Array.isArray(c) ? c[0] : c;
64
- }
65
- },
66
- { immediate: !0, flush: "sync" }
67
- ), i(S, o), m = () => l(y, null, r.default?.() ?? []);
68
- }
69
- return m;
70
- }
71
- }), t = (a, r) => u({
72
- name: r,
73
- props: { ...v },
74
- setup(e, { slots: m }) {
75
- return () => l(
76
- F,
77
- {
78
- ...e,
79
- type: a
80
- },
81
- m
82
- );
83
- }
84
- });
85
- return {
86
- SchemaField: R,
87
- SchemaMarkupField: F,
88
- SchemaStringField: t("string", "SchemaStringField"),
89
- SchemaObjectField: t("object", "SchemaObjectField"),
90
- SchemaArrayField: t("array", "SchemaArrayField"),
91
- SchemaBooleanField: t("boolean", "SchemaBooleanField"),
92
- SchemaDateField: t("date", "SchemaDateField"),
93
- SchemaDateTimeField: t("datetime", "SchemaDatetimeField"),
94
- SchemaVoidField: t("void", "SchemaVoidField"),
95
- SchemaNumberField: t("number", "SchemaNumberField")
96
- };
14
+ function createSchemaField(options = {}) {
15
+ const SchemaField = defineComponent({
16
+ name: "SchemaField",
17
+ inheritAttrs: false,
18
+ props: schemaFieldProps,
19
+ setup(props, { slots }) {
20
+ const schemaRef = computed(() => Schema.isSchemaInstance(props.schema) ? props.schema : new Schema({
21
+ type: "object",
22
+ ...props.schema
23
+ }));
24
+ const scopeRef = computed(() => lazyMerge({}, options.scope ?? {}, props.scope ?? {}));
25
+ const optionsRef = computed(() => ({
26
+ ...options,
27
+ components: {
28
+ ...options.components,
29
+ ...props.components
30
+ }
31
+ }));
32
+ provide(SchemaMarkupSymbol, schemaRef);
33
+ provide(SchemaOptionsSymbol, optionsRef);
34
+ provide(SchemaExpressionScopeSymbol, scopeRef);
35
+ return () => {
36
+ env.nonameId = 0;
37
+ const normalizedSlots = slots.default?.() ?? [];
38
+ const recursionNode = h(RecursionField, {
39
+ ...props,
40
+ schema: schemaRef.value
41
+ });
42
+ return h(Fragment, null, [...normalizedSlots, recursionNode]);
43
+ };
44
+ }
45
+ });
46
+ const MarkupField = defineComponent({
47
+ name: "MarkupField",
48
+ props: {
49
+ type: String,
50
+ ...markupSchemaProps
51
+ },
52
+ setup(props, { slots }) {
53
+ const parentRef = inject(SchemaMarkupSymbol, null);
54
+ let render = () => null;
55
+ if (parentRef?.value) {
56
+ const name = props.name || getRandomName();
57
+ const appendArraySchema = (schema) => {
58
+ if (parentRef.value.items) return parentRef.value.addProperty(name, schema);
59
+ else return parentRef.value.setItems(resolveSchemaProps(props));
60
+ };
61
+ const schemaRef = shallowRef(parentRef.value);
62
+ watch(parentRef, () => {
63
+ if (parentRef.value.type === "object" || parentRef.value.type === "void") schemaRef.value = parentRef.value.addProperty(name, resolveSchemaProps(props));
64
+ else if (parentRef.value.type === "array") {
65
+ const schema = appendArraySchema(resolveSchemaProps(props));
66
+ schemaRef.value = Array.isArray(schema) ? schema[0] : schema;
67
+ }
68
+ }, {
69
+ immediate: true,
70
+ flush: "sync"
71
+ });
72
+ provide(SchemaMarkupSymbol, schemaRef);
73
+ render = () => h(Fragment, null, slots.default?.() ?? []);
74
+ }
75
+ return render;
76
+ }
77
+ });
78
+ const SchemaFieldFactory = (type, name) => {
79
+ return defineComponent({
80
+ name,
81
+ props: { ...markupSchemaProps },
82
+ setup(props, { slots }) {
83
+ return () => h(MarkupField, {
84
+ ...props,
85
+ type
86
+ }, slots);
87
+ }
88
+ });
89
+ };
90
+ return {
91
+ SchemaField,
92
+ SchemaMarkupField: MarkupField,
93
+ SchemaStringField: SchemaFieldFactory("string", "SchemaStringField"),
94
+ SchemaObjectField: SchemaFieldFactory("object", "SchemaObjectField"),
95
+ SchemaArrayField: SchemaFieldFactory("array", "SchemaArrayField"),
96
+ SchemaBooleanField: SchemaFieldFactory("boolean", "SchemaBooleanField"),
97
+ SchemaDateField: SchemaFieldFactory("date", "SchemaDateField"),
98
+ SchemaDateTimeField: SchemaFieldFactory("datetime", "SchemaDatetimeField"),
99
+ SchemaVoidField: SchemaFieldFactory("void", "SchemaVoidField"),
100
+ SchemaNumberField: SchemaFieldFactory("number", "SchemaNumberField")
101
+ };
97
102
  }
98
- export {
99
- C as createSchemaField
100
- };
101
- //# sourceMappingURL=SchemaField.mjs.map
103
+ //#endregion
104
+ export { createSchemaField };
105
+
106
+ //# sourceMappingURL=SchemaField.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaField.mjs","sources":["../../src/components/SchemaField.ts"],"sourcesContent":["import type { ISchema, SchemaTypes } from '@formily/json-schema'\nimport type { VNode } from 'vue'\nimport type {\n ISchemaFieldVueFactoryOptions,\n SchemaExpressionScope,\n SchemaVueComponents,\n} from '../types'\nimport { Schema } from '@formily/json-schema'\nimport { lazyMerge } from '@formily/shared'\nimport { computed, defineComponent, Fragment, h, inject, provide, shallowRef, watch } from 'vue'\nimport { SchemaExpressionScopeSymbol, SchemaMarkupSymbol, SchemaOptionsSymbol } from '../shared'\nimport { resolveSchemaProps } from '../utils/resolveSchemaProps'\nimport { markupSchemaProps, schemaFieldProps } from '../utils/schemaFieldProps'\nimport RecursionField from './RecursionField'\n\ntype SchemaFieldProps = import('../utils/schemaFieldProps').SchemaFieldProps\ntype MarkupSchemaProps = import('../utils/schemaFieldProps').MarkupSchemaProps\n\nconst env = {\n nonameId: 0,\n}\n\nfunction getRandomName() {\n return `NO_NAME_FIELD_$${env.nonameId++}`\n}\n\nexport function createSchemaField<Components extends SchemaVueComponents = SchemaVueComponents>(\n options: ISchemaFieldVueFactoryOptions<Components> = {},\n) {\n const SchemaField = defineComponent({\n name: 'SchemaField',\n inheritAttrs: false,\n props: schemaFieldProps,\n setup(props: SchemaFieldProps, { slots }) {\n const schemaRef = computed<Schema>(() =>\n Schema.isSchemaInstance(props.schema)\n ? props.schema\n : new Schema({\n type: 'object',\n ...props.schema,\n }),\n )\n\n const scopeRef = computed<SchemaExpressionScope>(() =>\n lazyMerge({} as SchemaExpressionScope, options.scope ?? {}, props.scope ?? {}),\n )\n\n const optionsRef = computed<ISchemaFieldVueFactoryOptions>(() => ({\n ...options,\n components: {\n ...options.components,\n ...props.components,\n },\n }))\n\n provide(SchemaMarkupSymbol, schemaRef)\n provide(SchemaOptionsSymbol, optionsRef)\n provide(SchemaExpressionScopeSymbol, scopeRef)\n\n return () => {\n env.nonameId = 0\n\n const normalizedSlots = slots.default?.() ?? []\n\n const recursionNode = h(RecursionField, {\n ...props,\n schema: schemaRef.value,\n })\n\n return h(Fragment, null, [...normalizedSlots, recursionNode])\n }\n },\n })\n\n const MarkupField = defineComponent({\n name: 'MarkupField',\n props: {\n type: String,\n ...markupSchemaProps,\n },\n setup(props: MarkupSchemaProps, { slots }) {\n const parentRef = inject(SchemaMarkupSymbol, null)\n let render: () => VNode | null = () => null\n\n if (parentRef?.value) {\n const name = props.name || getRandomName()\n const appendArraySchema = (schema: ISchema) => {\n if (parentRef.value.items) {\n return parentRef.value.addProperty(name, schema)\n }\n else {\n return parentRef.value.setItems(resolveSchemaProps(props))\n }\n }\n\n const schemaRef = shallowRef<Schema>(parentRef.value)\n\n watch(\n parentRef,\n () => {\n if (parentRef.value.type === 'object' || parentRef.value.type === 'void') {\n schemaRef.value = parentRef.value.addProperty(name, resolveSchemaProps(props))\n }\n else if (parentRef.value.type === 'array') {\n const schema = appendArraySchema(resolveSchemaProps(props))\n schemaRef.value = Array.isArray(schema) ? schema[0] : schema\n }\n },\n { immediate: true, flush: 'sync' },\n )\n provide(SchemaMarkupSymbol, schemaRef)\n\n render = () => h(Fragment, null, slots.default?.() ?? [])\n }\n\n return render\n },\n })\n\n const SchemaFieldFactory = (type: SchemaTypes, name: string) => {\n return defineComponent({\n name,\n props: { ...markupSchemaProps },\n setup(props, { slots }) {\n return () =>\n h(\n MarkupField,\n {\n ...props,\n type,\n },\n slots,\n )\n },\n })\n }\n\n return {\n SchemaField,\n SchemaMarkupField: MarkupField,\n SchemaStringField: SchemaFieldFactory('string', 'SchemaStringField'),\n SchemaObjectField: SchemaFieldFactory('object', 'SchemaObjectField'),\n SchemaArrayField: SchemaFieldFactory('array', 'SchemaArrayField'),\n SchemaBooleanField: SchemaFieldFactory('boolean', 'SchemaBooleanField'),\n SchemaDateField: SchemaFieldFactory('date', 'SchemaDateField'),\n SchemaDateTimeField: SchemaFieldFactory('datetime', 'SchemaDatetimeField'),\n SchemaVoidField: SchemaFieldFactory('void', 'SchemaVoidField'),\n SchemaNumberField: SchemaFieldFactory('number', 'SchemaNumberField'),\n }\n}\n"],"names":["env","getRandomName","createSchemaField","options","SchemaField","defineComponent","schemaFieldProps","props","slots","schemaRef","computed","Schema","scopeRef","lazyMerge","optionsRef","provide","SchemaMarkupSymbol","SchemaOptionsSymbol","SchemaExpressionScopeSymbol","normalizedSlots","recursionNode","h","RecursionField","Fragment","MarkupField","markupSchemaProps","parentRef","inject","render","name","appendArraySchema","schema","resolveSchemaProps","shallowRef","watch","SchemaFieldFactory","type"],"mappings":"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"}
1
+ {"version":3,"file":"SchemaField.mjs","names":[],"sources":["../../src/components/SchemaField.ts"],"sourcesContent":["import type { ISchema, SchemaTypes } from '@formily/json-schema'\nimport type { VNode } from 'vue'\nimport type {\n ISchemaFieldVueFactoryOptions,\n SchemaExpressionScope,\n SchemaVueComponents,\n} from '../types'\nimport { Schema } from '@formily/json-schema'\nimport { lazyMerge } from '@formily/shared'\nimport { computed, defineComponent, Fragment, h, inject, provide, shallowRef, watch } from 'vue'\nimport { SchemaExpressionScopeSymbol, SchemaMarkupSymbol, SchemaOptionsSymbol } from '../shared'\nimport { resolveSchemaProps } from '../utils/resolveSchemaProps'\nimport { markupSchemaProps, schemaFieldProps } from '../utils/schemaFieldProps'\nimport RecursionField from './RecursionField'\n\ntype SchemaFieldProps = import('../utils/schemaFieldProps').SchemaFieldProps\ntype MarkupSchemaProps = import('../utils/schemaFieldProps').MarkupSchemaProps\n\nconst env = {\n nonameId: 0,\n}\n\nfunction getRandomName() {\n return `NO_NAME_FIELD_$${env.nonameId++}`\n}\n\nexport function createSchemaField<Components extends SchemaVueComponents = SchemaVueComponents>(\n options: ISchemaFieldVueFactoryOptions<Components> = {},\n) {\n const SchemaField = defineComponent({\n name: 'SchemaField',\n inheritAttrs: false,\n props: schemaFieldProps,\n setup(props: SchemaFieldProps, { slots }) {\n const schemaRef = computed<Schema>(() =>\n Schema.isSchemaInstance(props.schema)\n ? props.schema\n : new Schema({\n type: 'object',\n ...props.schema,\n }),\n )\n\n const scopeRef = computed<SchemaExpressionScope>(() =>\n lazyMerge({} as SchemaExpressionScope, options.scope ?? {}, props.scope ?? {}),\n )\n\n const optionsRef = computed<ISchemaFieldVueFactoryOptions>(() => ({\n ...options,\n components: {\n ...options.components,\n ...props.components,\n },\n }))\n\n provide(SchemaMarkupSymbol, schemaRef)\n provide(SchemaOptionsSymbol, optionsRef)\n provide(SchemaExpressionScopeSymbol, scopeRef)\n\n return () => {\n env.nonameId = 0\n\n const normalizedSlots = slots.default?.() ?? []\n\n const recursionNode = h(RecursionField, {\n ...props,\n schema: schemaRef.value,\n })\n\n return h(Fragment, null, [...normalizedSlots, recursionNode])\n }\n },\n })\n\n const MarkupField = defineComponent({\n name: 'MarkupField',\n props: {\n type: String,\n ...markupSchemaProps,\n },\n setup(props: MarkupSchemaProps, { slots }) {\n const parentRef = inject(SchemaMarkupSymbol, null)\n let render: () => VNode | null = () => null\n\n if (parentRef?.value) {\n const name = props.name || getRandomName()\n const appendArraySchema = (schema: ISchema) => {\n if (parentRef.value.items) {\n return parentRef.value.addProperty(name, schema)\n }\n else {\n return parentRef.value.setItems(resolveSchemaProps(props))\n }\n }\n\n const schemaRef = shallowRef<Schema>(parentRef.value)\n\n watch(\n parentRef,\n () => {\n if (parentRef.value.type === 'object' || parentRef.value.type === 'void') {\n schemaRef.value = parentRef.value.addProperty(name, resolveSchemaProps(props))\n }\n else if (parentRef.value.type === 'array') {\n const schema = appendArraySchema(resolveSchemaProps(props))\n schemaRef.value = Array.isArray(schema) ? schema[0] : schema\n }\n },\n { immediate: true, flush: 'sync' },\n )\n provide(SchemaMarkupSymbol, schemaRef)\n\n render = () => h(Fragment, null, slots.default?.() ?? [])\n }\n\n return render\n },\n })\n\n const SchemaFieldFactory = (type: SchemaTypes, name: string) => {\n return defineComponent({\n name,\n props: { ...markupSchemaProps },\n setup(props, { slots }) {\n return () =>\n h(\n MarkupField,\n {\n ...props,\n type,\n },\n slots,\n )\n },\n })\n }\n\n return {\n SchemaField,\n SchemaMarkupField: MarkupField,\n SchemaStringField: SchemaFieldFactory('string', 'SchemaStringField'),\n SchemaObjectField: SchemaFieldFactory('object', 'SchemaObjectField'),\n SchemaArrayField: SchemaFieldFactory('array', 'SchemaArrayField'),\n SchemaBooleanField: SchemaFieldFactory('boolean', 'SchemaBooleanField'),\n SchemaDateField: SchemaFieldFactory('date', 'SchemaDateField'),\n SchemaDateTimeField: SchemaFieldFactory('datetime', 'SchemaDatetimeField'),\n SchemaVoidField: SchemaFieldFactory('void', 'SchemaVoidField'),\n SchemaNumberField: SchemaFieldFactory('number', 'SchemaNumberField'),\n }\n}\n"],"mappings":";;;;;;;;;AAkBA,MAAM,MAAM,EACV,UAAU,GACX;AAED,SAAS,gBAAgB;AACvB,QAAO,kBAAkB,IAAI;;AAG/B,SAAgB,kBACd,UAAqD,EAAE,EACvD;CACA,MAAM,cAAc,gBAAgB;EAClC,MAAM;EACN,cAAc;EACd,OAAO;EACP,MAAM,OAAyB,EAAE,SAAS;GACxC,MAAM,YAAY,eAChB,OAAO,iBAAiB,MAAM,OAAO,GACjC,MAAM,SACN,IAAI,OAAO;IACT,MAAM;IACN,GAAG,MAAM;IACV,CAAC,CACP;GAED,MAAM,WAAW,eACf,UAAU,EAAE,EAA2B,QAAQ,SAAS,EAAE,EAAE,MAAM,SAAS,EAAE,CAAC,CAC/E;GAED,MAAM,aAAa,gBAA+C;IAChE,GAAG;IACH,YAAY;KACV,GAAG,QAAQ;KACX,GAAG,MAAM;KACV;IACF,EAAE;AAEH,WAAQ,oBAAoB,UAAU;AACtC,WAAQ,qBAAqB,WAAW;AACxC,WAAQ,6BAA6B,SAAS;AAE9C,gBAAa;AACX,QAAI,WAAW;IAEf,MAAM,kBAAkB,MAAM,WAAW,IAAI,EAAE;IAE/C,MAAM,gBAAgB,EAAE,gBAAgB;KACtC,GAAG;KACH,QAAQ,UAAU;KACnB,CAAC;AAEF,WAAO,EAAE,UAAU,MAAM,CAAC,GAAG,iBAAiB,cAAc,CAAC;;;EAGlE,CAAC;CAEF,MAAM,cAAc,gBAAgB;EAClC,MAAM;EACN,OAAO;GACL,MAAM;GACN,GAAG;GACJ;EACD,MAAM,OAA0B,EAAE,SAAS;GACzC,MAAM,YAAY,OAAO,oBAAoB,KAAK;GAClD,IAAI,eAAmC;AAEvC,OAAI,WAAW,OAAO;IACpB,MAAM,OAAO,MAAM,QAAQ,eAAe;IAC1C,MAAM,qBAAqB,WAAoB;AAC7C,SAAI,UAAU,MAAM,MAClB,QAAO,UAAU,MAAM,YAAY,MAAM,OAAO;SAGhD,QAAO,UAAU,MAAM,SAAS,mBAAmB,MAAM,CAAC;;IAI9D,MAAM,YAAY,WAAmB,UAAU,MAAM;AAErD,UACE,iBACM;AACJ,SAAI,UAAU,MAAM,SAAS,YAAY,UAAU,MAAM,SAAS,OAChE,WAAU,QAAQ,UAAU,MAAM,YAAY,MAAM,mBAAmB,MAAM,CAAC;cAEvE,UAAU,MAAM,SAAS,SAAS;MACzC,MAAM,SAAS,kBAAkB,mBAAmB,MAAM,CAAC;AAC3D,gBAAU,QAAQ,MAAM,QAAQ,OAAO,GAAG,OAAO,KAAK;;OAG1D;KAAE,WAAW;KAAM,OAAO;KAAQ,CACnC;AACD,YAAQ,oBAAoB,UAAU;AAEtC,mBAAe,EAAE,UAAU,MAAM,MAAM,WAAW,IAAI,EAAE,CAAC;;AAG3D,UAAO;;EAEV,CAAC;CAEF,MAAM,sBAAsB,MAAmB,SAAiB;AAC9D,SAAO,gBAAgB;GACrB;GACA,OAAO,EAAE,GAAG,mBAAmB;GAC/B,MAAM,OAAO,EAAE,SAAS;AACtB,iBACE,EACE,aACA;KACE,GAAG;KACH;KACD,EACD,MACD;;GAEN,CAAC;;AAGJ,QAAO;EACL;EACA,mBAAmB;EACnB,mBAAmB,mBAAmB,UAAU,oBAAoB;EACpE,mBAAmB,mBAAmB,UAAU,oBAAoB;EACpE,kBAAkB,mBAAmB,SAAS,mBAAmB;EACjE,oBAAoB,mBAAmB,WAAW,qBAAqB;EACvE,iBAAiB,mBAAmB,QAAQ,kBAAkB;EAC9D,qBAAqB,mBAAmB,YAAY,sBAAsB;EAC1E,iBAAiB,mBAAmB,QAAQ,kBAAkB;EAC9D,mBAAmB,mBAAmB,UAAU,oBAAoB;EACrE"}
@@ -1,42 +1,48 @@
1
- declare const _default: import('vue').DefineComponent<{
2
- name: import('@formily/core').FormPathPattern;
3
- basePath?: import('@formily/core').FormPathPattern | undefined;
4
- title?: any;
5
- description?: any;
6
- display?: string | undefined;
7
- pattern?: string | undefined;
8
- hidden?: boolean | undefined;
9
- visible?: boolean | undefined;
10
- editable?: boolean | undefined;
11
- disabled?: boolean | undefined;
12
- readOnly?: boolean | undefined;
13
- readPretty?: boolean | undefined;
14
- decorator?: boolean | any[] | undefined;
15
- component?: boolean | any[] | undefined;
16
- reactions?: (import('@formily/core').FieldReaction[] | import('@formily/core').FieldReaction) | undefined;
17
- content?: any;
18
- data?: any;
19
- decoratorContent?: any;
20
- }, () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
21
- [key: string]: any;
22
- }>, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
23
- name: import('@formily/core').FormPathPattern;
24
- basePath?: import('@formily/core').FormPathPattern | undefined;
25
- title?: any;
26
- description?: any;
27
- display?: string | undefined;
28
- pattern?: string | undefined;
29
- hidden?: boolean | undefined;
30
- visible?: boolean | undefined;
31
- editable?: boolean | undefined;
32
- disabled?: boolean | undefined;
33
- readOnly?: boolean | undefined;
34
- readPretty?: boolean | undefined;
35
- decorator?: boolean | any[] | undefined;
36
- component?: boolean | any[] | undefined;
37
- reactions?: (import('@formily/core').FieldReaction[] | import('@formily/core').FieldReaction) | undefined;
38
- content?: any;
39
- data?: any;
40
- decoratorContent?: any;
41
- }> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
42
- export default _default;
1
+ import * as _$vue from "vue";
2
+ import * as _$_formily_core0 from "@formily/core";
3
+
4
+ //#region src/components/VoidField.d.ts
5
+ declare const _default: _$vue.DefineComponent<{
6
+ name: _$_formily_core0.FormPathPattern;
7
+ basePath?: _$_formily_core0.FormPathPattern | undefined;
8
+ title?: any;
9
+ description?: any;
10
+ display?: string | undefined;
11
+ pattern?: string | undefined;
12
+ hidden?: boolean | undefined;
13
+ visible?: boolean | undefined;
14
+ editable?: boolean | undefined;
15
+ disabled?: boolean | undefined;
16
+ readOnly?: boolean | undefined;
17
+ readPretty?: boolean | undefined;
18
+ decorator?: boolean | any[] | undefined;
19
+ component?: boolean | any[] | undefined;
20
+ reactions?: (_$_formily_core0.FieldReaction[] | _$_formily_core0.FieldReaction) | undefined;
21
+ content?: any;
22
+ data?: any;
23
+ decoratorContent?: any;
24
+ }, () => _$vue.VNode<_$vue.RendererNode, _$vue.RendererElement, {
25
+ [key: string]: any;
26
+ }>, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<{
27
+ name: _$_formily_core0.FormPathPattern;
28
+ basePath?: _$_formily_core0.FormPathPattern | undefined;
29
+ title?: any;
30
+ description?: any;
31
+ display?: string | undefined;
32
+ pattern?: string | undefined;
33
+ hidden?: boolean | undefined;
34
+ visible?: boolean | undefined;
35
+ editable?: boolean | undefined;
36
+ disabled?: boolean | undefined;
37
+ readOnly?: boolean | undefined;
38
+ readPretty?: boolean | undefined;
39
+ decorator?: boolean | any[] | undefined;
40
+ component?: boolean | any[] | undefined;
41
+ reactions?: (_$_formily_core0.FieldReaction[] | _$_formily_core0.FieldReaction) | undefined;
42
+ content?: any;
43
+ data?: any;
44
+ decoratorContent?: any;
45
+ }> & Readonly<{}>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, true, {}, any>;
46
+ //#endregion
47
+ export { _default };
48
+ //# sourceMappingURL=VoidField.d.ts.map
@@ -1,24 +1,24 @@
1
- import { defineComponent as t, h as r } from "vue";
2
- import { voidFieldProps as d } from "../utils/fieldProps.mjs";
3
- import { getRawComponent as m } from "../utils/getRawComponent.mjs";
4
- import n from "./ReactiveField.mjs";
5
- const s = t({
6
- name: "VoidField",
7
- props: d,
8
- setup(o, { slots: e }) {
9
- return () => {
10
- const i = {
11
- fieldType: "VoidField",
12
- fieldProps: {
13
- ...o,
14
- ...m(o)
15
- }
16
- };
17
- return r(n, i, e);
18
- };
19
- }
1
+ import { voidFieldProps } from "../utils/fieldProps.mjs";
2
+ import { getRawComponent } from "../utils/getRawComponent.mjs";
3
+ import ReactiveField_default from "./ReactiveField.mjs";
4
+ import { defineComponent, h } from "vue";
5
+ //#region src/components/VoidField.ts
6
+ var VoidField_default = defineComponent({
7
+ name: "VoidField",
8
+ props: voidFieldProps,
9
+ setup(props, { slots }) {
10
+ return () => {
11
+ return h(ReactiveField_default, {
12
+ fieldType: "VoidField",
13
+ fieldProps: {
14
+ ...props,
15
+ ...getRawComponent(props)
16
+ }
17
+ }, slots);
18
+ };
19
+ }
20
20
  });
21
- export {
22
- s as default
23
- };
24
- //# sourceMappingURL=VoidField.mjs.map
21
+ //#endregion
22
+ export { VoidField_default as default };
23
+
24
+ //# sourceMappingURL=VoidField.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"VoidField.mjs","sources":["../../src/components/VoidField.ts"],"sourcesContent":["import type { IReactiveFieldProps, IVoidFieldProps } from '../types'\nimport { defineComponent, h } from 'vue'\nimport { voidFieldProps } from '../utils/fieldProps'\nimport { getRawComponent } from '../utils/getRawComponent'\nimport ReactiveField from './ReactiveField'\n\nexport default defineComponent({\n name: 'VoidField',\n props: voidFieldProps,\n setup(props: IVoidFieldProps, { slots }) {\n return () => {\n const componentData: IReactiveFieldProps = {\n fieldType: 'VoidField',\n fieldProps: {\n ...props,\n ...getRawComponent(props),\n },\n }\n return h(ReactiveField, componentData, slots)\n }\n },\n})\n"],"names":["VoidField","defineComponent","voidFieldProps","props","slots","componentData","getRawComponent","h","ReactiveField"],"mappings":";;;;AAMA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EACP,MAAMC,GAAwB,EAAE,OAAAC,KAAS;AACvC,WAAO,MAAM;AACX,YAAMC,IAAqC;AAAA,QACzC,WAAW;AAAA,QACX,YAAY;AAAA,UACV,GAAGF;AAAA,UACH,GAAGG,EAAgBH,CAAK;AAAA,QAAA;AAAA,MAC1B;AAEF,aAAOI,EAAEC,GAAeH,GAAeD,CAAK;AAAA,IAC9C;AAAA,EACF;AACF,CAAC;"}
1
+ {"version":3,"file":"VoidField.mjs","names":["ReactiveField"],"sources":["../../src/components/VoidField.ts"],"sourcesContent":["import type { IReactiveFieldProps, IVoidFieldProps } from '../types'\nimport { defineComponent, h } from 'vue'\nimport { voidFieldProps } from '../utils/fieldProps'\nimport { getRawComponent } from '../utils/getRawComponent'\nimport ReactiveField from './ReactiveField'\n\nexport default defineComponent({\n name: 'VoidField',\n props: voidFieldProps,\n setup(props: IVoidFieldProps, { slots }) {\n return () => {\n const componentData: IReactiveFieldProps = {\n fieldType: 'VoidField',\n fieldProps: {\n ...props,\n ...getRawComponent(props),\n },\n }\n return h(ReactiveField, componentData, slots)\n }\n },\n})\n"],"mappings":";;;;;AAMA,IAAA,oBAAe,gBAAgB;CAC7B,MAAM;CACN,OAAO;CACP,MAAM,OAAwB,EAAE,SAAS;AACvC,eAAa;AAQX,UAAO,EAAEA,uBAPkC;IACzC,WAAW;IACX,YAAY;KACV,GAAG;KACH,GAAG,gBAAgB,MAAM;KAC1B;IACF,EACsC,MAAM;;;CAGlD,CAAC"}
@@ -1,9 +1,9 @@
1
- export { default as ArrayField } from './ArrayField';
2
- export { default as ExpressionScope } from './ExpressionScope';
3
- export { default as Field } from './Field';
4
- export { default as FormConsumer } from './FormConsumer';
5
- export { default as FormProvider } from './FormProvider';
6
- export { default as ObjectField } from './ObjectField';
7
- export { default as RecursionField } from './RecursionField';
8
- export { createSchemaField } from './SchemaField';
9
- export { default as VoidField } from './VoidField';
1
+ import { _default } from "./ArrayField.js";
2
+ import { _default as _default$1 } from "./ExpressionScope.js";
3
+ import { _default as _default$2 } from "./Field.js";
4
+ import { _default as _default$3 } from "./FormConsumer.js";
5
+ import { _default as _default$4 } from "./FormProvider.js";
6
+ import { _default as _default$5 } from "./ObjectField.js";
7
+ import { RecursionField } from "./RecursionField.js";
8
+ import { createSchemaField } from "./SchemaField.js";
9
+ import { _default as _default$6 } from "./VoidField.js";
@@ -1,21 +1,10 @@
1
- import { default as o } from "./ArrayField.mjs";
2
- import { default as t } from "./ExpressionScope.mjs";
3
- import { default as d } from "./Field.mjs";
4
- import { default as m } from "./FormConsumer.mjs";
5
- import { default as p } from "./FormProvider.mjs";
6
- import { default as u } from "./ObjectField.mjs";
7
- import { default as F } from "./RecursionField.mjs";
8
- import { createSchemaField as n } from "./SchemaField.mjs";
9
- import { default as b } from "./VoidField.mjs";
10
- export {
11
- o as ArrayField,
12
- t as ExpressionScope,
13
- d as Field,
14
- m as FormConsumer,
15
- p as FormProvider,
16
- u as ObjectField,
17
- F as RecursionField,
18
- b as VoidField,
19
- n as createSchemaField
20
- };
21
- //# sourceMappingURL=index.mjs.map
1
+ import "./ArrayField.mjs";
2
+ import "./ExpressionScope.mjs";
3
+ import "./Field.mjs";
4
+ import "./FormConsumer.mjs";
5
+ import "./FormProvider.mjs";
6
+ import "./ObjectField.mjs";
7
+ import "./VoidField.mjs";
8
+ import "./RecursionField.mjs";
9
+ import "./SchemaField.mjs";
10
+ export {};
@@ -1,5 +1,5 @@
1
- export * from './useField';
2
- export * from './useFieldSchema';
3
- export * from './useForm';
4
- export * from './useFormEffects';
5
- export * from './useParentForm';
1
+ import { useField } from "./useField.js";
2
+ import { useFieldSchema } from "./useFieldSchema.js";
3
+ import { useForm } from "./useForm.js";
4
+ import { useFormEffects } from "./useFormEffects.js";
5
+ import { useParentForm } from "./useParentForm.js";
@@ -1,13 +1,6 @@
1
- import { useField as o } from "./useField.mjs";
2
- import { useFieldSchema as f } from "./useFieldSchema.mjs";
3
- import { useForm as s } from "./useForm.mjs";
4
- import { useFormEffects as u } from "./useFormEffects.mjs";
5
- import { useParentForm as F } from "./useParentForm.mjs";
6
- export {
7
- o as useField,
8
- f as useFieldSchema,
9
- s as useForm,
10
- u as useFormEffects,
11
- F as useParentForm
12
- };
13
- //# sourceMappingURL=index.mjs.map
1
+ import "./useField.mjs";
2
+ import "./useFieldSchema.mjs";
3
+ import "./useForm.mjs";
4
+ import "./useFormEffects.mjs";
5
+ import "./useParentForm.mjs";
6
+ export {};
@@ -1,14 +1,22 @@
1
- import { watch as m, nextTick as e, onMounted as c, onUnmounted as i } from "vue";
2
- function f(n) {
3
- return m(n, (o, u, t) => {
4
- o && o !== u && (u?.onUnmount(), e(() => o.onMount()), t(() => o.onUnmount()));
5
- }), c(() => {
6
- n.value?.onMount();
7
- }), i(() => {
8
- n.value?.onUnmount();
9
- }), n;
1
+ import { nextTick, onMounted, onUnmounted, watch } from "vue";
2
+ //#region src/hooks/useAttach.ts
3
+ function useAttach(target) {
4
+ watch(target, (v, old, onInvalidate) => {
5
+ if (v && v !== old) {
6
+ old?.onUnmount();
7
+ nextTick(() => v.onMount());
8
+ onInvalidate(() => v.onUnmount());
9
+ }
10
+ });
11
+ onMounted(() => {
12
+ target.value?.onMount();
13
+ });
14
+ onUnmounted(() => {
15
+ target.value?.onUnmount();
16
+ });
17
+ return target;
10
18
  }
11
- export {
12
- f as useAttach
13
- };
14
- //# sourceMappingURL=useAttach.mjs.map
19
+ //#endregion
20
+ export { useAttach };
21
+
22
+ //# sourceMappingURL=useAttach.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAttach.mjs","sources":["../../src/hooks/useAttach.ts"],"sourcesContent":["import type { Ref } from 'vue'\nimport { nextTick, onMounted, onUnmounted, watch } from 'vue'\n\ninterface IRecycleTarget {\n onMount: () => void\n onUnmount: () => void\n}\n\nexport function useAttach<T extends IRecycleTarget>(target: Ref<T>): Ref<T> {\n watch(target, (v, old, onInvalidate) => {\n if (v && v !== old) {\n old?.onUnmount()\n nextTick(() => v.onMount())\n onInvalidate(() => v.onUnmount())\n }\n })\n onMounted(() => {\n target.value?.onMount()\n })\n onUnmounted(() => {\n target.value?.onUnmount()\n })\n return target\n}\n"],"names":["useAttach","target","watch","v","old","onInvalidate","nextTick","onMounted","onUnmounted"],"mappings":";AAQO,SAASA,EAAoCC,GAAwB;AAC1E,SAAAC,EAAMD,GAAQ,CAACE,GAAGC,GAAKC,MAAiB;AACtC,IAAIF,KAAKA,MAAMC,MACbA,GAAK,UAAA,GACLE,EAAS,MAAMH,EAAE,SAAS,GAC1BE,EAAa,MAAMF,EAAE,WAAW;AAAA,EAEpC,CAAC,GACDI,EAAU,MAAM;AACd,IAAAN,EAAO,OAAO,QAAA;AAAA,EAChB,CAAC,GACDO,EAAY,MAAM;AAChB,IAAAP,EAAO,OAAO,UAAA;AAAA,EAChB,CAAC,GACMA;AACT;"}
1
+ {"version":3,"file":"useAttach.mjs","names":[],"sources":["../../src/hooks/useAttach.ts"],"sourcesContent":["import type { Ref } from 'vue'\nimport { nextTick, onMounted, onUnmounted, watch } from 'vue'\n\ninterface IRecycleTarget {\n onMount: () => void\n onUnmount: () => void\n}\n\nexport function useAttach<T extends IRecycleTarget>(target: Ref<T>): Ref<T> {\n watch(target, (v, old, onInvalidate) => {\n if (v && v !== old) {\n old?.onUnmount()\n nextTick(() => v.onMount())\n onInvalidate(() => v.onUnmount())\n }\n })\n onMounted(() => {\n target.value?.onMount()\n })\n onUnmounted(() => {\n target.value?.onUnmount()\n })\n return target\n}\n"],"mappings":";;AAQA,SAAgB,UAAoC,QAAwB;AAC1E,OAAM,SAAS,GAAG,KAAK,iBAAiB;AACtC,MAAI,KAAK,MAAM,KAAK;AAClB,QAAK,WAAW;AAChB,kBAAe,EAAE,SAAS,CAAC;AAC3B,sBAAmB,EAAE,WAAW,CAAC;;GAEnC;AACF,iBAAgB;AACd,SAAO,OAAO,SAAS;GACvB;AACF,mBAAkB;AAChB,SAAO,OAAO,WAAW;GACzB;AACF,QAAO"}
@@ -1,3 +1,8 @@
1
- import { GeneralField } from '@formily/core';
2
- import { Ref } from 'vue';
3
- export declare function useField<T = GeneralField>(): Ref<T>;
1
+ import { Ref } from "vue";
2
+ import { GeneralField } from "@formily/core";
3
+
4
+ //#region src/hooks/useField.d.ts
5
+ declare function useField<T = GeneralField>(): Ref<T>;
6
+ //#endregion
7
+ export { useField };
8
+ //# sourceMappingURL=useField.d.ts.map
@@ -1,9 +1,10 @@
1
- import { inject as r, ref as e } from "vue";
2
- import { FieldSymbol as o } from "../shared/context.mjs";
3
- function m() {
4
- return r(o, e());
1
+ import { FieldSymbol } from "../shared/context.mjs";
2
+ import { inject, ref } from "vue";
3
+ //#region src/hooks/useField.ts
4
+ function useField() {
5
+ return inject(FieldSymbol, ref());
5
6
  }
6
- export {
7
- m as useField
8
- };
9
- //# sourceMappingURL=useField.mjs.map
7
+ //#endregion
8
+ export { useField };
9
+
10
+ //# sourceMappingURL=useField.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"useField.mjs","sources":["../../src/hooks/useField.ts"],"sourcesContent":["import type { GeneralField } from '@formily/core'\nimport type { Ref } from 'vue'\nimport { inject, ref } from 'vue'\nimport { FieldSymbol } from '../shared/context'\n\nexport function useField<T = GeneralField>() {\n return inject(FieldSymbol, ref()) as Ref<T>\n}\n"],"names":["useField","inject","FieldSymbol","ref"],"mappings":";;AAKO,SAASA,IAA6B;AAC3C,SAAOC,EAAOC,GAAaC,GAAK;AAClC;"}
1
+ {"version":3,"file":"useField.mjs","names":[],"sources":["../../src/hooks/useField.ts"],"sourcesContent":["import type { GeneralField } from '@formily/core'\nimport type { Ref } from 'vue'\nimport { inject, ref } from 'vue'\nimport { FieldSymbol } from '../shared/context'\n\nexport function useField<T = GeneralField>() {\n return inject(FieldSymbol, ref()) as Ref<T>\n}\n"],"mappings":";;;AAKA,SAAgB,WAA6B;AAC3C,QAAO,OAAO,aAAa,KAAK,CAAC"}
@@ -1 +1,8 @@
1
- export declare function useFieldSchema(): import('vue').Ref<import('@formily/json-schema').Schema<any, any, any, any, any, any, any, any, any> | undefined, import('@formily/json-schema').Schema<any, any, any, any, any, any, any, any, any> | undefined>;
1
+ import * as _$vue from "vue";
2
+ import * as _$_formily_json_schema0 from "@formily/json-schema";
3
+
4
+ //#region src/hooks/useFieldSchema.d.ts
5
+ declare function useFieldSchema(): _$vue.Ref<_$_formily_json_schema0.Schema<any, any, any, any, any, any, any, any, any> | undefined, _$_formily_json_schema0.Schema<any, any, any, any, any, any, any, any, any> | undefined>;
6
+ //#endregion
7
+ export { useFieldSchema };
8
+ //# sourceMappingURL=useFieldSchema.d.ts.map
@@ -1,9 +1,10 @@
1
- import { inject as e, ref as r } from "vue";
2
- import { SchemaSymbol as m } from "../shared/context.mjs";
3
- function i() {
4
- return e(m, r());
1
+ import { SchemaSymbol } from "../shared/context.mjs";
2
+ import { inject, ref } from "vue";
3
+ //#region src/hooks/useFieldSchema.ts
4
+ function useFieldSchema() {
5
+ return inject(SchemaSymbol, ref());
5
6
  }
6
- export {
7
- i as useFieldSchema
8
- };
9
- //# sourceMappingURL=useFieldSchema.mjs.map
7
+ //#endregion
8
+ export { useFieldSchema };
9
+
10
+ //# sourceMappingURL=useFieldSchema.mjs.map