@silver-formily/vue 2.0.3 → 2.0.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.
@@ -64,7 +64,7 @@ function $(l = {}) {
64
64
  }
65
65
  },
66
66
  { immediate: !0 }
67
- ), c(h, r), () => i(f, null, n.default?.());
67
+ ), c(h, r), () => i(f, null, n.default?.() ?? []);
68
68
  }
69
69
  }), t = (a, n) => d({
70
70
  name: n,
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaField.mjs","sources":["../../src/components/SchemaField.ts"],"sourcesContent":["import type { ISchema, SchemaTypes } from '@formily/json-schema'\r\nimport type {\r\n ISchemaFieldProps,\r\n ISchemaFieldVueFactoryOptions,\r\n SchemaExpressionScope,\r\n SchemaVueComponents,\r\n} from '../types'\r\nimport type { MarkupSchemaProps } from '../utils/schemaFieldProps'\r\nimport { Schema } from '@formily/json-schema'\r\nimport { lazyMerge } from '@formily/shared'\r\nimport { computed, defineComponent, Fragment, h, inject, provide, shallowRef, watch } from 'vue'\r\nimport { SchemaExpressionScopeSymbol, SchemaMarkupSymbol, SchemaOptionsSymbol } from '../shared'\r\nimport { resolveSchemaProps } from '../utils/resolveSchemaProps'\r\nimport { markupSchemaProps, schemaFieldProps } from '../utils/schemaFieldProps'\r\nimport RecursionField from './RecursionField'\r\n\r\nconst env = {\r\n nonameId: 0,\r\n}\r\n\r\nfunction getRandomName() {\r\n return `NO_NAME_FIELD_$${env.nonameId++}`\r\n}\r\n\r\nexport function createSchemaField<Components extends SchemaVueComponents = SchemaVueComponents>(\r\n options: ISchemaFieldVueFactoryOptions<Components> = {},\r\n) {\r\n const SchemaField = defineComponent({\r\n name: 'SchemaField',\r\n inheritAttrs: false,\r\n props: schemaFieldProps,\r\n setup(props: ISchemaFieldProps, { slots }) {\r\n const schemaRef = computed(() =>\r\n Schema.isSchemaInstance(props.schema)\r\n ? props.schema\r\n : new Schema({\r\n type: 'object',\r\n ...props.schema,\r\n }),\r\n )\r\n\r\n const scopeRef = computed<SchemaExpressionScope>(() =>\r\n lazyMerge({} as SchemaExpressionScope, options.scope ?? {}, props.scope ?? {}),\r\n )\r\n\r\n const optionsRef = computed(() => ({\r\n ...options,\r\n components: {\r\n ...options.components,\r\n ...props.components,\r\n },\r\n }))\r\n\r\n provide(SchemaMarkupSymbol, schemaRef)\r\n provide(SchemaOptionsSymbol, optionsRef)\r\n provide(SchemaExpressionScopeSymbol, scopeRef)\r\n\r\n return () => {\r\n env.nonameId = 0\r\n\r\n const slotContent = slots.default?.()\r\n const normalizedSlots = Array.isArray(slotContent)\r\n ? slotContent\r\n : slotContent\r\n ? [slotContent]\r\n : []\r\n\r\n const recursionNode = h(RecursionField, {\r\n ...props,\r\n schema: schemaRef.value,\r\n })\r\n\r\n return h(Fragment, null, [...normalizedSlots, recursionNode])\r\n }\r\n },\r\n })\r\n\r\n const MarkupField = defineComponent({\r\n name: 'MarkupField',\r\n props: {\r\n type: String,\r\n ...markupSchemaProps,\r\n },\r\n setup(props: MarkupSchemaProps, { slots }) {\r\n const parentRef = inject(SchemaMarkupSymbol, null)\r\n if (!parentRef || !parentRef.value)\r\n return () => null\r\n\r\n const name = props.name || getRandomName()\r\n const appendArraySchema = (schema: ISchema) => {\r\n if (parentRef.value.items) {\r\n return parentRef.value.addProperty(name, schema)\r\n }\r\n else {\r\n return parentRef.value.setItems(resolveSchemaProps(props))\r\n }\r\n }\r\n\r\n const schemaRef = shallowRef()\r\n\r\n watch(\r\n parentRef,\r\n () => {\r\n if (parentRef.value.type === 'object' || parentRef.value.type === 'void') {\r\n schemaRef.value = parentRef.value.addProperty(name, resolveSchemaProps(props))\r\n }\r\n else if (parentRef.value.type === 'array') {\r\n const schema = appendArraySchema(resolveSchemaProps(props))\r\n schemaRef.value = Array.isArray(schema) ? schema[0] : schema\r\n }\r\n },\r\n { immediate: true },\r\n )\r\n provide(SchemaMarkupSymbol, schemaRef)\r\n\r\n return () => h(Fragment, null, slots.default?.())\r\n },\r\n })\r\n\r\n const SchemaFieldFactory = (type: SchemaTypes, name: string) => {\r\n return defineComponent({\r\n name,\r\n props: { ...markupSchemaProps },\r\n setup(props, { slots }) {\r\n return () =>\r\n h(\r\n MarkupField,\r\n {\r\n ...props,\r\n type,\r\n },\r\n slots,\r\n )\r\n },\r\n })\r\n }\r\n\r\n return {\r\n SchemaField,\r\n SchemaMarkupField: MarkupField,\r\n SchemaStringField: SchemaFieldFactory('string', 'SchemaStringField'),\r\n SchemaObjectField: SchemaFieldFactory('object', 'SchemaObjectField'),\r\n SchemaArrayField: SchemaFieldFactory('array', 'SchemaArrayField'),\r\n SchemaBooleanField: SchemaFieldFactory('boolean', 'SchemaBooleanField'),\r\n SchemaDateField: SchemaFieldFactory('date', 'SchemaDateField'),\r\n SchemaDateTimeField: SchemaFieldFactory('datetime', 'SchemaDatetimeField'),\r\n SchemaVoidField: SchemaFieldFactory('void', 'SchemaVoidField'),\r\n SchemaNumberField: SchemaFieldFactory('number', 'SchemaNumberField'),\r\n }\r\n}\r\n"],"names":["env","getRandomName","createSchemaField","options","SchemaField","defineComponent","schemaFieldProps","props","slots","schemaRef","computed","Schema","scopeRef","lazyMerge","optionsRef","provide","SchemaMarkupSymbol","SchemaOptionsSymbol","SchemaExpressionScopeSymbol","slotContent","normalizedSlots","recursionNode","h","RecursionField","Fragment","MarkupField","markupSchemaProps","parentRef","inject","name","appendArraySchema","schema","resolveSchemaProps","shallowRef","watch","SchemaFieldFactory","type"],"mappings":"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"}
1
+ {"version":3,"file":"SchemaField.mjs","sources":["../../src/components/SchemaField.ts"],"sourcesContent":["import type { ISchema, SchemaTypes } from '@formily/json-schema'\r\nimport type {\r\n ISchemaFieldProps,\r\n ISchemaFieldVueFactoryOptions,\r\n SchemaExpressionScope,\r\n SchemaVueComponents,\r\n} from '../types'\r\nimport type { MarkupSchemaProps } from '../utils/schemaFieldProps'\r\nimport { Schema } from '@formily/json-schema'\r\nimport { lazyMerge } from '@formily/shared'\r\nimport { computed, defineComponent, Fragment, h, inject, provide, shallowRef, watch } from 'vue'\r\nimport { SchemaExpressionScopeSymbol, SchemaMarkupSymbol, SchemaOptionsSymbol } from '../shared'\r\nimport { resolveSchemaProps } from '../utils/resolveSchemaProps'\r\nimport { markupSchemaProps, schemaFieldProps } from '../utils/schemaFieldProps'\r\nimport RecursionField from './RecursionField'\r\n\r\nconst env = {\r\n nonameId: 0,\r\n}\r\n\r\nfunction getRandomName() {\r\n return `NO_NAME_FIELD_$${env.nonameId++}`\r\n}\r\n\r\nexport function createSchemaField<Components extends SchemaVueComponents = SchemaVueComponents>(\r\n options: ISchemaFieldVueFactoryOptions<Components> = {},\r\n) {\r\n const SchemaField = defineComponent({\r\n name: 'SchemaField',\r\n inheritAttrs: false,\r\n props: schemaFieldProps,\r\n setup(props: ISchemaFieldProps, { slots }) {\r\n const schemaRef = computed(() =>\r\n Schema.isSchemaInstance(props.schema)\r\n ? props.schema\r\n : new Schema({\r\n type: 'object',\r\n ...props.schema,\r\n }),\r\n )\r\n\r\n const scopeRef = computed<SchemaExpressionScope>(() =>\r\n lazyMerge({} as SchemaExpressionScope, options.scope ?? {}, props.scope ?? {}),\r\n )\r\n\r\n const optionsRef = computed(() => ({\r\n ...options,\r\n components: {\r\n ...options.components,\r\n ...props.components,\r\n },\r\n }))\r\n\r\n provide(SchemaMarkupSymbol, schemaRef)\r\n provide(SchemaOptionsSymbol, optionsRef)\r\n provide(SchemaExpressionScopeSymbol, scopeRef)\r\n\r\n return () => {\r\n env.nonameId = 0\r\n\r\n const slotContent = slots.default?.()\r\n const normalizedSlots = Array.isArray(slotContent)\r\n ? slotContent\r\n : slotContent\r\n ? [slotContent]\r\n : []\r\n\r\n const recursionNode = h(RecursionField, {\r\n ...props,\r\n schema: schemaRef.value,\r\n })\r\n\r\n return h(Fragment, null, [...normalizedSlots, recursionNode])\r\n }\r\n },\r\n })\r\n\r\n const MarkupField = defineComponent({\r\n name: 'MarkupField',\r\n props: {\r\n type: String,\r\n ...markupSchemaProps,\r\n },\r\n setup(props: MarkupSchemaProps, { slots }) {\r\n const parentRef = inject(SchemaMarkupSymbol, null)\r\n if (!parentRef || !parentRef.value)\r\n return () => null\r\n\r\n const name = props.name || getRandomName()\r\n const appendArraySchema = (schema: ISchema) => {\r\n if (parentRef.value.items) {\r\n return parentRef.value.addProperty(name, schema)\r\n }\r\n else {\r\n return parentRef.value.setItems(resolveSchemaProps(props))\r\n }\r\n }\r\n\r\n const schemaRef = shallowRef()\r\n\r\n watch(\r\n parentRef,\r\n () => {\r\n if (parentRef.value.type === 'object' || parentRef.value.type === 'void') {\r\n schemaRef.value = parentRef.value.addProperty(name, resolveSchemaProps(props))\r\n }\r\n else if (parentRef.value.type === 'array') {\r\n const schema = appendArraySchema(resolveSchemaProps(props))\r\n schemaRef.value = Array.isArray(schema) ? schema[0] : schema\r\n }\r\n },\r\n { immediate: true },\r\n )\r\n provide(SchemaMarkupSymbol, schemaRef)\r\n\r\n return () => h(Fragment, null, slots.default?.() ?? [])\n },\n })\n\r\n const SchemaFieldFactory = (type: SchemaTypes, name: string) => {\r\n return defineComponent({\r\n name,\r\n props: { ...markupSchemaProps },\r\n setup(props, { slots }) {\r\n return () =>\r\n h(\r\n MarkupField,\r\n {\r\n ...props,\r\n type,\r\n },\r\n slots,\r\n )\r\n },\r\n })\r\n }\r\n\r\n return {\r\n SchemaField,\r\n SchemaMarkupField: MarkupField,\r\n SchemaStringField: SchemaFieldFactory('string', 'SchemaStringField'),\r\n SchemaObjectField: SchemaFieldFactory('object', 'SchemaObjectField'),\r\n SchemaArrayField: SchemaFieldFactory('array', 'SchemaArrayField'),\r\n SchemaBooleanField: SchemaFieldFactory('boolean', 'SchemaBooleanField'),\r\n SchemaDateField: SchemaFieldFactory('date', 'SchemaDateField'),\r\n SchemaDateTimeField: SchemaFieldFactory('datetime', 'SchemaDatetimeField'),\r\n SchemaVoidField: SchemaFieldFactory('void', 'SchemaVoidField'),\r\n SchemaNumberField: SchemaFieldFactory('number', 'SchemaNumberField'),\r\n }\r\n}\r\n"],"names":["env","getRandomName","createSchemaField","options","SchemaField","defineComponent","schemaFieldProps","props","slots","schemaRef","computed","Schema","scopeRef","lazyMerge","optionsRef","provide","SchemaMarkupSymbol","SchemaOptionsSymbol","SchemaExpressionScopeSymbol","slotContent","normalizedSlots","recursionNode","h","RecursionField","Fragment","MarkupField","markupSchemaProps","parentRef","inject","name","appendArraySchema","schema","resolveSchemaProps","shallowRef","watch","SchemaFieldFactory","type"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@silver-formily/vue",
3
3
  "type": "module",
4
- "version": "2.0.3",
4
+ "version": "2.0.4",
5
5
  "description": "Vue3 版本的 @formily/vue",
6
6
  "author": "hezhengxu",
7
7
  "license": "MIT",