@silver-formily/element-plus 2.0.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +35 -35
- package/esm/__builtins__/configs/index.mjs.map +1 -1
- package/esm/__builtins__/shared/hooks.mjs.map +1 -1
- package/esm/__builtins__/shared/loading.mjs.map +1 -1
- package/esm/__builtins__/shared/simple-version-compare.mjs.map +1 -1
- package/esm/__builtins__/shared/transform-component.d.ts +1 -2
- package/esm/__builtins__/shared/transform-component.mjs +1 -1
- package/esm/__builtins__/shared/transform-component.mjs.map +1 -1
- package/esm/__builtins__/shared/utils.mjs +1 -1
- package/esm/__builtins__/shared/utils.mjs.map +1 -1
- package/esm/array-base/index.mjs +39 -42
- package/esm/array-base/index.mjs.map +1 -1
- package/esm/array-base/symbols.mjs.map +1 -1
- package/esm/array-base/utils.mjs +29 -33
- package/esm/array-base/utils.mjs.map +1 -1
- package/esm/array-cards/array-cards.d.ts +1 -1
- package/esm/array-cards/index.d.ts +3 -3
- package/esm/array-cards/index.mjs +23 -25
- package/esm/array-cards/index.mjs.map +1 -1
- package/esm/array-collapse/array-collapse.d.ts +2 -2
- package/esm/array-collapse/index.d.ts +3 -3
- package/esm/array-collapse/index.mjs +87 -88
- package/esm/array-collapse/index.mjs.map +1 -1
- package/esm/array-collapse/utils.mjs +2 -8
- package/esm/array-collapse/utils.mjs.map +1 -1
- package/esm/array-items/index.mjs +29 -32
- package/esm/array-items/index.mjs.map +1 -1
- package/esm/array-list-tabs/array-list-tabs.d.ts +3 -3
- package/esm/array-list-tabs/index.d.ts +6 -6
- package/esm/array-list-tabs/index.mjs +88 -86
- package/esm/array-list-tabs/index.mjs.map +1 -1
- package/esm/array-list-tabs/utils.mjs +5 -11
- package/esm/array-list-tabs/utils.mjs.map +1 -1
- package/esm/array-table/array-table.d.ts +1 -1
- package/esm/array-table/index.d.ts +3 -3
- package/esm/array-table/index.mjs +48 -50
- package/esm/array-table/index.mjs.map +1 -1
- package/esm/array-table/types.d.ts +1 -1
- package/esm/array-table/utils.mjs +12 -18
- package/esm/array-table/utils.mjs.map +1 -1
- package/esm/array-tabs/index.mjs +26 -28
- package/esm/array-tabs/index.mjs.map +1 -1
- package/esm/cascader/cascader.d.ts +1 -6
- package/esm/cascader/index.d.ts +3 -16
- package/esm/cascader/index.mjs +26 -32
- package/esm/cascader/index.mjs.map +1 -1
- package/esm/checkbox/checkbox-group.d.ts +2 -15
- package/esm/checkbox/index.d.ts +3 -28
- package/esm/checkbox/index.mjs +33 -45
- package/esm/checkbox/index.mjs.map +1 -1
- package/esm/date-picker/index.d.ts +442 -1
- package/esm/date-picker/index.mjs +9 -18
- package/esm/date-picker/index.mjs.map +1 -1
- package/esm/editable/index.mjs +34 -36
- package/esm/editable/index.mjs.map +1 -1
- package/esm/form/form.mjs +7 -7
- package/esm/form/form.mjs.map +1 -1
- package/esm/form-button-group/index.mjs +20 -23
- package/esm/form-button-group/index.mjs.map +1 -1
- package/esm/form-button-group/utils.mjs +2 -8
- package/esm/form-button-group/utils.mjs.map +1 -1
- package/esm/form-collapse/index.mjs +31 -32
- package/esm/form-collapse/index.mjs.map +1 -1
- package/esm/form-collapse/utils.mjs.map +1 -1
- package/esm/form-dialog/index.mjs +18 -18
- package/esm/form-dialog/index.mjs.map +1 -1
- package/esm/form-drawer/index.mjs +17 -17
- package/esm/form-drawer/index.mjs.map +1 -1
- package/esm/form-grid/hooks.mjs.map +1 -1
- package/esm/form-grid/index.mjs +20 -23
- package/esm/form-grid/index.mjs.map +1 -1
- package/esm/form-item/index.mjs +30 -32
- package/esm/form-item/index.mjs.map +1 -1
- package/esm/form-item/utils.mjs.map +1 -1
- package/esm/form-layout/form-layout.mjs +11 -14
- package/esm/form-layout/form-layout.mjs.map +1 -1
- package/esm/form-layout/utils.mjs +19 -24
- package/esm/form-layout/utils.mjs.map +1 -1
- package/esm/form-step/index.mjs +22 -24
- package/esm/form-step/index.mjs.map +1 -1
- package/esm/form-step/utils.mjs.map +1 -1
- package/esm/form-tab/form-tab.d.ts +2 -2
- package/esm/form-tab/hooks.mjs +1 -1
- package/esm/form-tab/hooks.mjs.map +1 -1
- package/esm/form-tab/index.d.ts +5 -5
- package/esm/form-tab/index.mjs +28 -29
- package/esm/form-tab/index.mjs.map +1 -1
- package/esm/form-tab/types.d.ts +1 -1
- package/esm/form-tab/utils.mjs.map +1 -1
- package/esm/index.mjs +58 -58
- package/esm/input/index.d.ts +6 -38
- package/esm/input/index.mjs +36 -48
- package/esm/input/index.mjs.map +1 -1
- package/esm/input/input.d.ts +1 -8
- package/esm/input-number/index.d.ts +215 -1
- package/esm/input-number/index.mjs +8 -17
- package/esm/input-number/index.mjs.map +1 -1
- package/esm/pagination/components/jumper.mjs.map +1 -1
- package/esm/pagination/components/next.mjs.map +1 -1
- package/esm/pagination/components/pager.mjs.map +1 -1
- package/esm/pagination/components/prev.mjs.map +1 -1
- package/esm/pagination/components/total.mjs.map +1 -1
- package/esm/pagination/pagination.mjs +1 -1
- package/esm/pagination/pagination.mjs.map +1 -1
- package/esm/password/index.d.ts +6 -38
- package/esm/password/index.mjs +1 -1
- package/esm/password/index.mjs.map +1 -1
- package/esm/preview-text/cascader.d.ts +1 -1
- package/esm/preview-text/date-picker.d.ts +1 -1
- package/esm/preview-text/index.d.ts +13 -13
- package/esm/preview-text/index.mjs +115 -118
- package/esm/preview-text/index.mjs.map +1 -1
- package/esm/preview-text/input.d.ts +1 -1
- package/esm/preview-text/select.d.ts +1 -1
- package/esm/preview-text/time-picker.d.ts +1 -1
- package/esm/preview-text/tree.d.ts +1 -1
- package/esm/preview-text/utils.mjs.map +1 -1
- package/esm/radio/index.d.ts +3 -25
- package/esm/radio/index.mjs +34 -44
- package/esm/radio/index.mjs.map +1 -1
- package/esm/radio/radio-group.d.ts +2 -13
- package/esm/reset/index.mjs +1 -1
- package/esm/reset/index.mjs.map +1 -1
- package/esm/select/index.d.ts +3 -16
- package/esm/select/index.mjs +62 -70
- package/esm/select/index.mjs.map +1 -1
- package/esm/select/select.d.ts +1 -6
- package/esm/select-table/index.d.ts +5 -5
- package/esm/select-table/index.mjs +78 -81
- package/esm/select-table/index.mjs.map +1 -1
- package/esm/select-table/select-table.d.ts +2 -2
- package/esm/select-table/types.d.ts +1 -1
- package/esm/submit/index.mjs +1 -1
- package/esm/submit/index.mjs.map +1 -1
- package/esm/switch/index.d.ts +260 -1
- package/esm/switch/index.mjs +5 -11
- package/esm/switch/index.mjs.map +1 -1
- package/esm/time-picker/index.d.ts +442 -1
- package/esm/time-picker/index.mjs +8 -15
- package/esm/time-picker/index.mjs.map +1 -1
- package/esm/time-select/index.d.ts +124 -1
- package/esm/time-select/index.mjs +10 -17
- package/esm/time-select/index.mjs.map +1 -1
- package/esm/transfer/index.mjs +5 -5
- package/esm/transfer/index.mjs.map +1 -1
- package/esm/tree/index.d.ts +5 -5
- package/esm/tree/index.mjs +42 -45
- package/esm/tree/index.mjs.map +1 -1
- package/esm/tree/tree.d.ts +2 -2
- package/esm/tree/types.d.ts +1 -1
- package/esm/tree/utils.mjs.map +1 -1
- package/esm/tree-select/index.d.ts +3 -19
- package/esm/tree-select/index.mjs +22 -32
- package/esm/tree-select/index.mjs.map +1 -1
- package/esm/tree-select/tree-select.d.ts +1 -8
- package/esm/upload/index.d.ts +5 -5
- package/esm/upload/index.mjs +14 -16
- package/esm/upload/index.mjs.map +1 -1
- package/esm/upload/upload.d.ts +2 -2
- package/esm/vendor/sizes.mjs.map +1 -1
- package/package.json +114 -116
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/array-collapse/array-collapse-item.vue","../../src/array-collapse/array-collapse.vue","../../src/array-collapse/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { ArrayField } from '@formily/core'\nimport type { ISchema } from '@formily/vue'\nimport { observable } from '@formily/reactive'\nimport { RecursionField, useField, useFieldSchema } from '@formily/vue'\nimport { ElBadge, ElCollapseItem } from 'element-plus'\nimport { useCleanAttrs } from '../__builtins__'\nimport { isIndexComponent, isOperationComponent, useIndex } from '../array-base/utils'\nimport { prefixCls } from './utils'\n\ndefineOptions({\n name: 'FArrayCollapseItem',\n inheritAttrs: false,\n})\n\nconst fieldRef = useField<ArrayField>()\nconst field = fieldRef.value\nconst schemaRef = useFieldSchema()\nconst schema = schemaRef.value.parent\nconst index = useIndex()\nconst errorCount = observable.computed(() => {\n const path = field.address.concat()\n return field.form.queryFeedbacks({\n type: 'error',\n address: `${path}.**`,\n }).length\n})\n\nconst { props: collapseItemProps } = useCleanAttrs()\n</script>\n\n<template>\n <ElCollapseItem :name=\"index\" v-bind=\"collapseItemProps\">\n <template #title>\n <div style=\"flex: 1;display: flex;align-items: center;\">\n <RecursionField\n :schema=\"schema.items\"\n :name=\"index\"\n :filter-properties=\"(schema: ISchema) => isIndexComponent(schema)\"\n :only-render-properties=\"true\"\n />\n <slot name=\"title\">\n <ElBadge\n :class=\"[`${prefixCls}-errors-badge`]\"\n :value=\"errorCount.value\"\n :offset=\"[5, -2]\"\n :hidden=\"errorCount.value === 0\"\n >\n {{ schema.items?.['x-component-props']?.title }}\n </ElBadge>\n </slot>\n </div>\n <div>\n <RecursionField\n :schema=\"Array.isArray(schema.items) ? schema.items[index] || schema.items[0] : schema.items\"\n :name=\"index\"\n :filter-properties=\"(schema: ISchema) => isOperationComponent(schema)\"\n :only-render-properties=\"true\"\n />\n </div>\n </template>\n <slot />\n </ElCollapseItem>\n</template>\n","<script lang=\"ts\" setup>\nimport type { ArrayField } from '@formily/core'\nimport type { ISchema } from '@formily/json-schema'\nimport { autorun } from '@formily/reactive'\nimport { isArr } from '@formily/shared'\nimport { RecursionField, useField, useFieldSchema } from '@formily/vue'\nimport {\n ElCard,\n ElCollapse,\n ElEmpty,\n} from 'element-plus'\nimport { ref, watchEffect } from 'vue'\nimport { useCleanAttrs } from '../__builtins__'\nimport { ArrayBase } from '../array-base'\nimport { getArrayItemSchema, isAdditionComponent, isIndexComponent, isOperationComponent } from '../array-base/utils'\nimport { prefixCls } from './utils'\n\ndefineOptions({\n name: 'FArrayCollapse',\n inheritAttrs: false,\n})\n\nconst props = defineProps({\n value: {},\n defaultOpenPanelCount: {\n type: Number,\n default: 5,\n },\n})\n\nconst fieldRef = useField<ArrayField>()\nconst schemaRef = useFieldSchema()\nconst field = fieldRef.value\nconst schema = schemaRef.value\n\nconst { props: collapseProps } = useCleanAttrs()\nconst activeKeys = ref<number[] | number>([])\n\nconst { getKey, keyMap } = ArrayBase.useKey(schemaRef.value)\n\nconst dataSource = ref(field.value)\n\nautorun(() => {\n isArr(field.value) && (dataSource.value = [...field.value])\n})\n\nfunction range(count: number) {\n return Array.from({ length: count }).map((_, i) => i)\n}\n\nfunction takeDefaultActiveKeys(dataSourceLength: number, defaultOpenPanelCount: number, accordion = false) {\n if (accordion) {\n return 0\n }\n if (dataSourceLength < defaultOpenPanelCount)\n return range(dataSourceLength)\n\n return range(defaultOpenPanelCount)\n}\n\nfunction insertActiveKeys(activeKeys: number[] | number, index: number, accordion = false) {\n if (accordion)\n return index\n /* istanbul ignore if -- @preserve */\n if (!isArr(activeKeys))\n return index\n if (activeKeys.length <= index)\n return (activeKeys).concat(index)\n return (activeKeys).reduce((buf, key) => {\n if (key === index)\n return [...buf, key, key + 1]\n return buf.concat(key + 1)\n }, [])\n}\n\nwatchEffect(() => {\n if (!field.modified && dataSource.value.length > 0) {\n activeKeys.value = takeDefaultActiveKeys(\n dataSource.value.length,\n props.defaultOpenPanelCount,\n collapseProps.value.accordion as boolean,\n )\n }\n})\n\nfunction handleCollapseChange(keys: number[] | number) {\n activeKeys.value = keys\n}\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <ArrayBase\n :key=\"dataSource.length\"\n :key-map=\"keyMap\"\n :add=\"(index: number) => {\n activeKeys = insertActiveKeys(\n activeKeys,\n index,\n collapseProps.accordion as boolean,\n )\n }\"\n >\n <template v-if=\"!Array.isArray(props.value) || props.value.length === 0\">\n <ElCard :class=\"[`${prefixCls}-item`]\" shadow=\"never\" v-bind=\"collapseProps\" :header=\"collapseProps.title || field.title\">\n <ElEmpty />\n </ElCard>\n </template>\n <template v-else>\n <ElCollapse\n :model-value=\"activeKeys\"\n :class=\"`${prefixCls}-item`\"\n v-bind=\"collapseProps\"\n @change=\"handleCollapseChange\"\n >\n <ArrayBase.Item v-for=\"(item, index) of dataSource\" :key=\"getKey(item, index)\" :index=\"index\" :record=\"item\">\n <RecursionField\n :schema=\"getArrayItemSchema(schema, index)\"\n :name=\"index\"\n :filter-properties=\"(schema: ISchema) => !isIndexComponent(schema) && !isOperationComponent(schema)\"\n />\n </ArrayBase.Item>\n </ElCollapse>\n </template>\n <template v-for=\"(itemSchema, key) in schema.properties\" :key=\"key\">\n <RecursionField v-if=\"isAdditionComponent(itemSchema)\" :schema=\"itemSchema\" name=\"addition\" />\n </template>\n </ArrayBase>\n </div>\n</template>\n","import { composeExport } from '../__builtins__/shared'\nimport { ArrayBase } from '../array-base'\nimport ArrayCollapseItem from './array-collapse-item.vue'\nimport ArrayCollapseInner from './array-collapse.vue'\nimport './style.scss'\n\nexport const ArrayCollapse = composeExport(ArrayCollapseInner, {\n Item: ArrayCollapseItem,\n Index: ArrayBase.Index,\n SortHandle: ArrayBase.SortHandle,\n Addition: ArrayBase.Addition,\n Remove: ArrayBase.Remove,\n MoveDown: ArrayBase.MoveDown,\n MoveUp: ArrayBase.MoveUp,\n useArray: ArrayBase.useArray,\n useIndex: ArrayBase.useIndex,\n useRecord: ArrayBase.useRecord,\n})\n\nexport default ArrayCollapse\n"],"names":["field","useField","schema","useFieldSchema","index","useIndex","errorCount","observable","path","collapseItemProps","useCleanAttrs","_openBlock","_createBlock","_unref","_mergeProps","_createElementVNode","_hoisted_1","_createVNode","RecursionField","isIndexComponent","_renderSlot","_ctx","ElBadge","prefixCls","isOperationComponent","props","__props","fieldRef","schemaRef","collapseProps","activeKeys","ref","getKey","keyMap","ArrayBase","dataSource","autorun","isArr","range","count","_","i","takeDefaultActiveKeys","dataSourceLength","defaultOpenPanelCount","accordion","insertActiveKeys","buf","key","watchEffect","handleCollapseChange","keys","_createElementBlock","ElEmpty","_Fragment","_renderList","item","getArrayItemSchema","itemSchema","isAdditionComponent","ArrayCollapse","composeExport","ArrayCollapseInner","ArrayCollapseItem"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/array-collapse/array-collapse-item.vue","../../src/array-collapse/array-collapse.vue","../../src/array-collapse/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport type { ArrayField } from '@formily/core'\r\nimport type { ISchema } from '@formily/json-schema'\r\nimport { observable } from '@formily/reactive'\r\nimport { isArr } from '@formily/shared'\r\nimport { RecursionField, useField, useFieldSchema } from '@silver-formily/vue'\r\nimport { ElBadge, ElCollapseItem } from 'element-plus'\r\nimport { useCleanAttrs } from '../__builtins__'\r\nimport { isIndexComponent, isOperationComponent, useIndex } from '../array-base/utils'\r\nimport { prefixCls } from './utils'\r\n\r\ndefineOptions({\r\n name: 'FArrayCollapseItem',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst fieldRef = useField<ArrayField>()\r\nconst field = fieldRef.value\r\nconst schemaRef = useFieldSchema()\r\nconst schema = schemaRef.value.parent\r\nconst index = useIndex()\r\nconst errorCount = observable.computed(() => {\r\n const path = field.address.concat()\r\n return field.form.queryFeedbacks({\r\n type: 'error',\r\n address: `${path}.**`,\r\n }).length\r\n})\r\n\r\nconst { props: collapseItemProps } = useCleanAttrs()\r\n</script>\r\n\r\n<template>\r\n <ElCollapseItem :name=\"index\" v-bind=\"collapseItemProps\">\r\n <template #title>\r\n <div style=\"flex: 1;display: flex;align-items: center;\">\r\n <RecursionField\r\n v-if=\"!isArr(schema.items)\"\r\n :schema=\"schema.items\"\r\n :name=\"index\"\r\n :filter-properties=\"(schema: ISchema) => isIndexComponent(schema)\"\r\n :only-render-properties=\"true\"\r\n />\r\n <slot name=\"title\">\r\n <ElBadge\r\n :class=\"[`${prefixCls}-errors-badge`]\"\r\n :value=\"errorCount.value\"\r\n :offset=\"[5, -2]\"\r\n :hidden=\"errorCount.value === 0\"\r\n >\r\n {{ schema.items?.['x-component-props']?.title }}\r\n </ElBadge>\r\n </slot>\r\n </div>\r\n <div>\r\n <RecursionField\r\n :schema=\"Array.isArray(schema.items) ? schema.items[index] || schema.items[0] : schema.items\"\r\n :name=\"index\"\r\n :filter-properties=\"(schema: ISchema) => isOperationComponent(schema)\"\r\n :only-render-properties=\"true\"\r\n />\r\n </div>\r\n </template>\r\n <slot />\r\n </ElCollapseItem>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { ArrayField } from '@formily/core'\r\nimport type { ISchema } from '@formily/json-schema'\r\nimport { autorun } from '@formily/reactive'\r\nimport { isArr } from '@formily/shared'\r\nimport { RecursionField, useField, useFieldSchema } from '@silver-formily/vue'\r\nimport {\r\n ElCard,\r\n ElCollapse,\r\n ElEmpty,\r\n} from 'element-plus'\r\nimport { ref, watchEffect } from 'vue'\r\nimport { useCleanAttrs } from '../__builtins__'\r\nimport { ArrayBase } from '../array-base'\r\nimport { getArrayItemSchema, isAdditionComponent, isIndexComponent, isOperationComponent } from '../array-base/utils'\r\nimport { prefixCls } from './utils'\r\n\r\ndefineOptions({\r\n name: 'FArrayCollapse',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps({\r\n modelValue: {},\r\n defaultOpenPanelCount: {\r\n type: Number,\r\n default: 5,\r\n },\r\n})\r\n\r\nconst fieldRef = useField<ArrayField>()\r\nconst schemaRef = useFieldSchema()\r\nconst field = fieldRef.value\r\nconst schema = schemaRef.value\r\n\r\nconst { props: collapseProps } = useCleanAttrs(['modelValue', 'onUpdate:modelValue'])\r\nconst activeKeys = ref<number[] | number>([])\r\n\r\nconst { getKey, keyMap } = ArrayBase.useKey(schemaRef.value)\r\n\r\nconst dataSource = ref(field.value)\r\n\r\nautorun(() => {\r\n isArr(field.value) && (dataSource.value = [...field.value])\r\n})\r\n\r\nfunction range(count: number) {\r\n return Array.from({ length: count }).map((_, i) => i)\r\n}\r\n\r\nfunction takeDefaultActiveKeys(dataSourceLength: number, defaultOpenPanelCount: number, accordion = false) {\r\n if (accordion) {\r\n return 0\r\n }\r\n if (dataSourceLength < defaultOpenPanelCount)\r\n return range(dataSourceLength)\r\n\r\n return range(defaultOpenPanelCount)\r\n}\r\n\r\nfunction insertActiveKeys(activeKeys: number[] | number, index: number, accordion = false) {\r\n if (accordion)\r\n return index\r\n /* istanbul ignore if -- @preserve */\r\n if (!isArr(activeKeys))\r\n return index\r\n if (activeKeys.length <= index)\r\n return (activeKeys).concat(index)\r\n return (activeKeys).reduce((buf, key) => {\r\n if (key === index)\r\n return [...buf, key, key + 1]\r\n return buf.concat(key + 1)\r\n }, [])\r\n}\r\n\r\nwatchEffect(() => {\r\n if (!field.modified && dataSource.value.length > 0) {\r\n activeKeys.value = takeDefaultActiveKeys(\r\n dataSource.value.length,\r\n props.defaultOpenPanelCount,\r\n collapseProps.value.accordion as boolean,\r\n )\r\n }\r\n})\r\n\r\nfunction handleCollapseChange(keys: number[] | number) {\r\n activeKeys.value = keys\r\n}\r\n</script>\r\n\r\n<template>\r\n <div :class=\"prefixCls\">\r\n <ArrayBase\r\n :key=\"dataSource.length\"\r\n :key-map=\"keyMap\"\r\n :add=\"(index: number) => {\r\n activeKeys = insertActiveKeys(\r\n activeKeys,\r\n index,\r\n collapseProps.accordion as boolean,\r\n )\r\n }\"\r\n >\r\n <template v-if=\"!Array.isArray(props.modelValue) || props.modelValue.length === 0\">\r\n <ElCard :class=\"[`${prefixCls}-item`]\" shadow=\"never\" v-bind=\"collapseProps\" :header=\"collapseProps.title || field.title\">\r\n <ElEmpty />\r\n </ElCard>\r\n </template>\r\n <template v-else>\r\n <ElCollapse\r\n :model-value=\"activeKeys\"\r\n :class=\"`${prefixCls}-item`\"\r\n v-bind=\"collapseProps\"\r\n @change=\"handleCollapseChange\"\r\n >\r\n <ArrayBase.Item v-for=\"(item, index) of dataSource\" :key=\"getKey(item, index)\" :index=\"index\" :record=\"item\">\r\n <RecursionField\r\n :schema=\"getArrayItemSchema(schema, index)\"\r\n :name=\"index\"\r\n :filter-properties=\"(schema: ISchema) => !isIndexComponent(schema) && !isOperationComponent(schema)\"\r\n />\r\n </ArrayBase.Item>\r\n </ElCollapse>\r\n </template>\r\n <template v-for=\"(itemSchema, key) in schema.properties\" :key=\"key\">\r\n <RecursionField v-if=\"isAdditionComponent(itemSchema)\" :schema=\"itemSchema\" name=\"addition\" />\r\n </template>\r\n </ArrayBase>\r\n </div>\r\n</template>\r\n","import { composeExport } from '../__builtins__/shared'\r\nimport { ArrayBase } from '../array-base'\r\nimport ArrayCollapseItem from './array-collapse-item.vue'\r\nimport ArrayCollapseInner from './array-collapse.vue'\r\nimport './style.scss'\r\n\r\nexport const ArrayCollapse = composeExport(ArrayCollapseInner, {\r\n Item: ArrayCollapseItem,\r\n Index: ArrayBase.Index,\r\n SortHandle: ArrayBase.SortHandle,\r\n Addition: ArrayBase.Addition,\r\n Remove: ArrayBase.Remove,\r\n MoveDown: ArrayBase.MoveDown,\r\n MoveUp: ArrayBase.MoveUp,\r\n useArray: ArrayBase.useArray,\r\n useIndex: ArrayBase.useIndex,\r\n useRecord: ArrayBase.useRecord,\r\n})\r\n\r\nexport default ArrayCollapse\r\n"],"names":["field","useField","schema","useFieldSchema","index","useIndex","errorCount","observable","path","collapseItemProps","useCleanAttrs","_openBlock","_createBlock","_unref","_mergeProps","_createElementVNode","_hoisted_1","isArr","RecursionField","isIndexComponent","_renderSlot","_ctx","_createVNode","ElBadge","prefixCls","isOperationComponent","props","__props","fieldRef","schemaRef","collapseProps","activeKeys","ref","getKey","keyMap","ArrayBase","dataSource","autorun","range","count","_","i","takeDefaultActiveKeys","dataSourceLength","defaultOpenPanelCount","accordion","insertActiveKeys","buf","key","watchEffect","handleCollapseChange","keys","_createElementBlock","ElEmpty","_Fragment","_renderList","item","getArrayItemSchema","itemSchema","isAdditionComponent","ArrayCollapse","composeExport","ArrayCollapseInner","ArrayCollapseItem"],"mappings":"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"}
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
import { stylePrefix as r } from "../__builtins__/configs/index.mjs";
|
|
2
|
-
|
|
3
|
-
import "element-plus";
|
|
4
|
-
import "@formily/reactive";
|
|
5
|
-
import "@formily/core";
|
|
6
|
-
import "@formily/reactive-vue";
|
|
7
|
-
import "@formily/vue";
|
|
8
|
-
const s = `${r}-array-collapse`;
|
|
2
|
+
const o = `${r}-array-collapse`;
|
|
9
3
|
export {
|
|
10
|
-
|
|
4
|
+
o as prefixCls
|
|
11
5
|
};
|
|
12
6
|
//# sourceMappingURL=utils.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.mjs","sources":["../../src/array-collapse/utils.ts"],"sourcesContent":["import { stylePrefix } from '../__builtins__'\n\nexport const prefixCls = `${stylePrefix}-array-collapse`\n"],"names":["prefixCls","stylePrefix"],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.mjs","sources":["../../src/array-collapse/utils.ts"],"sourcesContent":["import { stylePrefix } from '../__builtins__'\r\n\r\nexport const prefixCls = `${stylePrefix}-array-collapse`\r\n"],"names":["prefixCls","stylePrefix"],"mappings":";AAEO,MAAMA,IAAY,GAAGC,CAAW;"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
import { defineComponent as R, createElementBlock as s, openBlock as o, normalizeClass as _, renderSlot as M, ref as x, mergeProps as B, unref as e, createVNode as f, withCtx as y, Fragment as v, renderList as k, createBlock as $, createCommentVNode as D } from "vue";
|
|
2
|
-
import "element-plus";
|
|
3
|
-
import { autorun as E } from "@formily/reactive";
|
|
4
|
-
import "@formily/core";
|
|
5
|
-
import "@formily/reactive-vue";
|
|
6
|
-
import { useField as K, useFieldSchema as P, RecursionField as C } from "@formily/vue";
|
|
7
|
-
import { useCleanAttrs as U, composeExport as V } from "../__builtins__/shared/utils.mjs";
|
|
8
1
|
import { ArrayBase as r } from "../array-base/index.mjs";
|
|
2
|
+
import { defineComponent as R, createElementBlock as s, openBlock as o, normalizeClass as _, renderSlot as M, ref as x, mergeProps as V, unref as e, createVNode as f, withCtx as y, Fragment as v, renderList as k, createBlock as $, createCommentVNode as B } from "vue";
|
|
9
3
|
import { stylePrefix as h } from "../__builtins__/configs/index.mjs";
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
4
|
+
import { autorun as D } from "@formily/reactive";
|
|
5
|
+
import { isArr as E } from "@formily/shared";
|
|
6
|
+
import { useField as U, useFieldSchema as K, RecursionField as C } from "@silver-formily/vue";
|
|
7
|
+
import { VueDraggable as P } from "vue-draggable-plus";
|
|
8
|
+
import { useKey as b, getArrayItemSchema as H, isAdditionComponent as N } from "../array-base/utils.mjs";
|
|
9
|
+
import { useCleanAttrs as z, composeExport as L } from "../__builtins__/shared/utils.mjs";
|
|
13
10
|
import '../styles/array-items/index.css';const j = /* @__PURE__ */ R({
|
|
14
11
|
name: "FArrayItemsItem",
|
|
15
12
|
__name: "array-items-item",
|
|
@@ -20,9 +17,9 @@ import '../styles/array-items/index.css';const j = /* @__PURE__ */ R({
|
|
|
20
17
|
}
|
|
21
18
|
},
|
|
22
19
|
setup(I) {
|
|
23
|
-
const
|
|
24
|
-
return (n,
|
|
25
|
-
class: _(`${
|
|
20
|
+
const c = I, l = `${h}-array-items`;
|
|
21
|
+
return (n, i) => (o(), s("div", {
|
|
22
|
+
class: _(`${l}-${c.type}`)
|
|
26
23
|
}, [
|
|
27
24
|
M(n.$slots, "default")
|
|
28
25
|
], 2));
|
|
@@ -32,27 +29,27 @@ import '../styles/array-items/index.css';const j = /* @__PURE__ */ R({
|
|
|
32
29
|
inheritAttrs: !1,
|
|
33
30
|
__name: "array-items",
|
|
34
31
|
setup(I) {
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
const c = U(), l = K(), n = c.value, i = l.value, d = `${h}-array-items`, { getKey: A, keyMap: m } = b(l.value), u = x(n.value), F = x(0);
|
|
33
|
+
D(() => {
|
|
34
|
+
u.value = [...n.value];
|
|
38
35
|
});
|
|
39
36
|
async function S(g) {
|
|
40
37
|
const { oldIndex: p, newIndex: t } = g;
|
|
41
|
-
|
|
38
|
+
E(m) && m.splice(t, 0, m.splice(p, 1)[0]), await n.move(p, t), F.value++;
|
|
42
39
|
}
|
|
43
|
-
const { props: w } =
|
|
44
|
-
return (g, p) => (o(), s("div",
|
|
45
|
-
f(e(r), { "key-map": e(
|
|
40
|
+
const { props: w } = z(["value", "modelValue", "onUpdate:modelValue"]);
|
|
41
|
+
return (g, p) => (o(), s("div", V({ class: d }, e(w)), [
|
|
42
|
+
f(e(r), { "key-map": e(m) }, {
|
|
46
43
|
default: y(() => [
|
|
47
|
-
f(e(
|
|
48
|
-
class: _(`${
|
|
49
|
-
"model-value":
|
|
44
|
+
f(e(P), {
|
|
45
|
+
class: _(`${d}-list`),
|
|
46
|
+
"model-value": u.value,
|
|
50
47
|
handle: `.${e(h)}-array-base-sort-handle`,
|
|
51
48
|
animation: 150,
|
|
52
49
|
onEnd: S
|
|
53
50
|
}, {
|
|
54
51
|
default: y(() => [
|
|
55
|
-
(o(!0), s(v, null, k(
|
|
52
|
+
(o(!0), s(v, null, k(u.value, (t, a) => (o(), $(e(r).Item, {
|
|
56
53
|
key: e(A)(t, a),
|
|
57
54
|
index: a,
|
|
58
55
|
record: t
|
|
@@ -60,11 +57,11 @@ import '../styles/array-items/index.css';const j = /* @__PURE__ */ R({
|
|
|
60
57
|
default: y(() => [
|
|
61
58
|
(o(), s("div", {
|
|
62
59
|
key: e(A)(t, a),
|
|
63
|
-
class: _([`${
|
|
60
|
+
class: _([`${d}-item-inner`]),
|
|
64
61
|
index: a
|
|
65
62
|
}, [
|
|
66
63
|
f(e(C), {
|
|
67
|
-
schema: e(
|
|
64
|
+
schema: e(H)(e(i), a),
|
|
68
65
|
name: a
|
|
69
66
|
}, null, 8, ["schema", "name"])
|
|
70
67
|
], 10, q))
|
|
@@ -74,19 +71,19 @@ import '../styles/array-items/index.css';const j = /* @__PURE__ */ R({
|
|
|
74
71
|
]),
|
|
75
72
|
_: 1
|
|
76
73
|
}, 8, ["class", "model-value", "handle"]),
|
|
77
|
-
(o(!0), s(v, null, k(e(
|
|
78
|
-
e(
|
|
74
|
+
(o(!0), s(v, null, k(e(i).properties, (t, a) => (o(), s(v, { key: a }, [
|
|
75
|
+
e(N)(t) ? (o(), $(e(C), {
|
|
79
76
|
key: 0,
|
|
80
77
|
schema: t,
|
|
81
78
|
name: "addition"
|
|
82
|
-
}, null, 8, ["schema"])) :
|
|
79
|
+
}, null, 8, ["schema"])) : B("", !0)
|
|
83
80
|
], 64))), 128))
|
|
84
81
|
]),
|
|
85
82
|
_: 1
|
|
86
83
|
}, 8, ["key-map"])
|
|
87
84
|
], 16));
|
|
88
85
|
}
|
|
89
|
-
}),
|
|
86
|
+
}), re = L(G, {
|
|
90
87
|
Item: j,
|
|
91
88
|
Index: r.Index,
|
|
92
89
|
SortHandle: r.SortHandle,
|
|
@@ -99,7 +96,7 @@ import '../styles/array-items/index.css';const j = /* @__PURE__ */ R({
|
|
|
99
96
|
useRecord: r.useRecord
|
|
100
97
|
});
|
|
101
98
|
export {
|
|
102
|
-
|
|
103
|
-
|
|
99
|
+
re as ArrayItems,
|
|
100
|
+
re as default
|
|
104
101
|
};
|
|
105
102
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/array-items/array-items-item.vue","../../src/array-items/array-items.vue","../../src/array-items/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { PropType } from 'vue'\nimport { stylePrefix } from '../__builtins__/configs'\n\ndefineOptions({\n name: 'FArrayItemsItem',\n})\n\nconst props = defineProps({\n type: {\n type: String as PropType<'card' | 'divide'>,\n default: 'card',\n },\n})\n\nconst prefixCls = `${stylePrefix}-array-items`\n</script>\n\n<template>\n <div\n :class=\"`${prefixCls}-${props.type}`\"\n >\n <slot />\n </div>\n</template>\n","<script lang=\"ts\" setup>\nimport type { ArrayField } from '@formily/core'\nimport { autorun } from '@formily/reactive'\nimport { isArr } from '@formily/shared'\nimport { RecursionField, useField, useFieldSchema } from '@formily/vue'\nimport { ref } from 'vue'\nimport { VueDraggable } from 'vue-draggable-plus'\nimport { useCleanAttrs } from '../__builtins__'\nimport { stylePrefix } from '../__builtins__/configs'\nimport { ArrayBase } from '../array-base'\nimport { getArrayItemSchema, isAdditionComponent, useKey } from '../array-base/utils'\n\ndefineOptions({\n name: 'FArrayItems',\n inheritAttrs: false,\n})\n\nconst fieldRef = useField<ArrayField>()\nconst schemaRef = useFieldSchema()\nconst field = fieldRef.value\nconst schema = schemaRef.value\n\nconst prefixCls = `${stylePrefix}-array-items`\nconst { getKey, keyMap } = useKey(schemaRef.value)\nconst dataSource = ref(field.value)\nconst triggerUpdateKey = ref(0)\n\nautorun(() => {\n dataSource.value = [...field.value]\n})\n\nasync function handleDragEnd(evt: { oldIndex: number, newIndex: number }) {\n const { oldIndex, newIndex } = evt\n if (isArr(keyMap)) {\n keyMap.splice(newIndex, 0, keyMap.splice(oldIndex, 1)[0])\n }\n await field.move(oldIndex, newIndex)\n triggerUpdateKey.value++\n}\nconst { props: arrayItemsProps } = useCleanAttrs(['value'])\n</script>\n\n<template>\n <div :class=\"prefixCls\" v-bind=\"arrayItemsProps\">\n <ArrayBase :key-map=\"keyMap\">\n <VueDraggable\n :class=\"`${prefixCls}-list`\"\n :model-value=\"dataSource\"\n :handle=\"`.${stylePrefix}-array-base-sort-handle`\"\n :animation=\"150\"\n @end=\"handleDragEnd\"\n >\n <ArrayBase.Item\n v-for=\"(element, index) of dataSource\"\n :key=\"getKey(element, index)\"\n :index=\"index\"\n :record=\"element\"\n >\n <div :key=\"getKey(element, index)\" :class=\"[`${prefixCls}-item-inner`]\" :index=\"index\">\n <RecursionField :schema=\"getArrayItemSchema(schema, index)\" :name=\"index\" />\n </div>\n </ArrayBase.Item>\n </VueDraggable>\n\n <template v-for=\"(itemSchema, key) of schema.properties\" :key=\"key\">\n <RecursionField v-if=\"isAdditionComponent(itemSchema)\" :schema=\"itemSchema\" name=\"addition\" />\n </template>\n </ArrayBase>\n </div>\n</template>\n","import { composeExport } from '../__builtins__/shared'\nimport { ArrayBase } from '../array-base'\nimport ArrayItemsItem from './array-items-item.vue'\nimport ArrayItemsInner from './array-items.vue'\nimport './style.scss'\n\nexport const ArrayItems = composeExport(ArrayItemsInner, {\n Item: ArrayItemsItem,\n Index: ArrayBase.Index,\n SortHandle: ArrayBase.SortHandle,\n Addition: ArrayBase.Addition,\n Remove: ArrayBase.Remove,\n MoveDown: ArrayBase.MoveDown,\n MoveUp: ArrayBase.MoveUp,\n useArray: ArrayBase.useArray,\n useIndex: ArrayBase.useIndex,\n useRecord: ArrayBase.useRecord,\n})\n\nexport default ArrayItems\n"],"names":["props","__props","prefixCls","stylePrefix","_createElementBlock","_normalizeClass","_renderSlot","_ctx","fieldRef","useField","schemaRef","useFieldSchema","field","schema","getKey","keyMap","useKey","dataSource","ref","triggerUpdateKey","autorun","handleDragEnd","evt","oldIndex","newIndex","isArr","arrayItemsProps","useCleanAttrs","_openBlock","_mergeProps","_unref","_createVNode","ArrayBase","VueDraggable","_Fragment","_renderList","element","index","_createBlock","RecursionField","getArrayItemSchema","itemSchema","key","isAdditionComponent","ArrayItems","composeExport","ArrayItemsInner","ArrayItemsItem"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/array-items/array-items-item.vue","../../src/array-items/array-items.vue","../../src/array-items/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport type { PropType } from 'vue'\r\nimport { stylePrefix } from '../__builtins__/configs'\r\n\r\ndefineOptions({\r\n name: 'FArrayItemsItem',\r\n})\r\n\r\nconst props = defineProps({\r\n type: {\r\n type: String as PropType<'card' | 'divide'>,\r\n default: 'card',\r\n },\r\n})\r\n\r\nconst prefixCls = `${stylePrefix}-array-items`\r\n</script>\r\n\r\n<template>\r\n <div\r\n :class=\"`${prefixCls}-${props.type}`\"\r\n >\r\n <slot />\r\n </div>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { ArrayField } from '@formily/core'\r\nimport { autorun } from '@formily/reactive'\r\nimport { isArr } from '@formily/shared'\r\nimport { RecursionField, useField, useFieldSchema } from '@silver-formily/vue'\r\nimport { ref } from 'vue'\r\nimport { VueDraggable } from 'vue-draggable-plus'\r\nimport { useCleanAttrs } from '../__builtins__'\r\nimport { stylePrefix } from '../__builtins__/configs'\r\nimport { ArrayBase } from '../array-base'\r\nimport { getArrayItemSchema, isAdditionComponent, useKey } from '../array-base/utils'\r\n\r\ndefineOptions({\r\n name: 'FArrayItems',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst fieldRef = useField<ArrayField>()\r\nconst schemaRef = useFieldSchema()\r\nconst field = fieldRef.value\r\nconst schema = schemaRef.value\r\n\r\nconst prefixCls = `${stylePrefix}-array-items`\r\nconst { getKey, keyMap } = useKey(schemaRef.value)\r\nconst dataSource = ref(field.value)\r\nconst triggerUpdateKey = ref(0)\r\n\r\nautorun(() => {\r\n dataSource.value = [...field.value]\r\n})\r\n\r\nasync function handleDragEnd(evt: { oldIndex: number, newIndex: number }) {\r\n const { oldIndex, newIndex } = evt\r\n if (isArr(keyMap)) {\r\n keyMap.splice(newIndex, 0, keyMap.splice(oldIndex, 1)[0])\r\n }\r\n await field.move(oldIndex, newIndex)\r\n triggerUpdateKey.value++\r\n}\r\nconst { props: arrayItemsProps } = useCleanAttrs(['value', 'modelValue', 'onUpdate:modelValue'])\r\n</script>\r\n\r\n<template>\r\n <div :class=\"prefixCls\" v-bind=\"arrayItemsProps\">\r\n <ArrayBase :key-map=\"keyMap\">\r\n <VueDraggable\r\n :class=\"`${prefixCls}-list`\"\r\n :model-value=\"dataSource\"\r\n :handle=\"`.${stylePrefix}-array-base-sort-handle`\"\r\n :animation=\"150\"\r\n @end=\"handleDragEnd\"\r\n >\r\n <ArrayBase.Item\r\n v-for=\"(element, index) of dataSource\"\r\n :key=\"getKey(element, index)\"\r\n :index=\"index\"\r\n :record=\"element\"\r\n >\r\n <div :key=\"getKey(element, index)\" :class=\"[`${prefixCls}-item-inner`]\" :index=\"index\">\r\n <RecursionField :schema=\"getArrayItemSchema(schema, index)\" :name=\"index\" />\r\n </div>\r\n </ArrayBase.Item>\r\n </VueDraggable>\r\n\r\n <template v-for=\"(itemSchema, key) of schema.properties\" :key=\"key\">\r\n <RecursionField v-if=\"isAdditionComponent(itemSchema)\" :schema=\"itemSchema\" name=\"addition\" />\r\n </template>\r\n </ArrayBase>\r\n </div>\r\n</template>\r\n","import { composeExport } from '../__builtins__/shared'\r\nimport { ArrayBase } from '../array-base'\r\nimport ArrayItemsItem from './array-items-item.vue'\r\nimport ArrayItemsInner from './array-items.vue'\r\nimport './style.scss'\r\n\r\nexport const ArrayItems = composeExport(ArrayItemsInner, {\r\n Item: ArrayItemsItem,\r\n Index: ArrayBase.Index,\r\n SortHandle: ArrayBase.SortHandle,\r\n Addition: ArrayBase.Addition,\r\n Remove: ArrayBase.Remove,\r\n MoveDown: ArrayBase.MoveDown,\r\n MoveUp: ArrayBase.MoveUp,\r\n useArray: ArrayBase.useArray,\r\n useIndex: ArrayBase.useIndex,\r\n useRecord: ArrayBase.useRecord,\r\n})\r\n\r\nexport default ArrayItems\r\n"],"names":["props","__props","prefixCls","stylePrefix","_createElementBlock","_normalizeClass","_renderSlot","_ctx","fieldRef","useField","schemaRef","useFieldSchema","field","schema","getKey","keyMap","useKey","dataSource","ref","triggerUpdateKey","autorun","handleDragEnd","evt","oldIndex","newIndex","isArr","arrayItemsProps","useCleanAttrs","_openBlock","_mergeProps","_unref","_createVNode","ArrayBase","VueDraggable","_Fragment","_renderList","element","index","_createBlock","RecursionField","getArrayItemSchema","itemSchema","key","isAdditionComponent","ArrayItems","composeExport","ArrayItemsInner","ArrayItemsItem"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
7
7
|
type: BooleanConstructor;
|
|
8
8
|
default: boolean;
|
|
9
9
|
};
|
|
10
|
-
|
|
10
|
+
modelValue: {
|
|
11
11
|
type: ArrayConstructor;
|
|
12
12
|
default: () => any[];
|
|
13
13
|
};
|
|
@@ -20,12 +20,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
20
20
|
type: BooleanConstructor;
|
|
21
21
|
default: boolean;
|
|
22
22
|
};
|
|
23
|
-
|
|
23
|
+
modelValue: {
|
|
24
24
|
type: ArrayConstructor;
|
|
25
25
|
default: () => any[];
|
|
26
26
|
};
|
|
27
27
|
}>> & Readonly<{}>, {
|
|
28
|
-
|
|
28
|
+
modelValue: unknown[];
|
|
29
29
|
showTitleFieldInTab: boolean;
|
|
30
30
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
|
|
31
31
|
export default _default;
|
|
@@ -8,12 +8,12 @@ export declare const ArrayListTabs: {
|
|
|
8
8
|
type: BooleanConstructor;
|
|
9
9
|
default: boolean;
|
|
10
10
|
};
|
|
11
|
-
|
|
11
|
+
modelValue: {
|
|
12
12
|
type: ArrayConstructor;
|
|
13
13
|
default: () => any[];
|
|
14
14
|
};
|
|
15
15
|
}>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
|
|
16
|
-
|
|
16
|
+
modelValue: unknown[];
|
|
17
17
|
showTitleFieldInTab: boolean;
|
|
18
18
|
}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
|
|
19
19
|
P: {};
|
|
@@ -31,12 +31,12 @@ export declare const ArrayListTabs: {
|
|
|
31
31
|
type: BooleanConstructor;
|
|
32
32
|
default: boolean;
|
|
33
33
|
};
|
|
34
|
-
|
|
34
|
+
modelValue: {
|
|
35
35
|
type: ArrayConstructor;
|
|
36
36
|
default: () => any[];
|
|
37
37
|
};
|
|
38
38
|
}>> & Readonly<{}>, {}, {}, {}, {}, {
|
|
39
|
-
|
|
39
|
+
modelValue: unknown[];
|
|
40
40
|
showTitleFieldInTab: boolean;
|
|
41
41
|
}>;
|
|
42
42
|
__isFragment?: never;
|
|
@@ -51,12 +51,12 @@ export declare const ArrayListTabs: {
|
|
|
51
51
|
type: BooleanConstructor;
|
|
52
52
|
default: boolean;
|
|
53
53
|
};
|
|
54
|
-
|
|
54
|
+
modelValue: {
|
|
55
55
|
type: ArrayConstructor;
|
|
56
56
|
default: () => any[];
|
|
57
57
|
};
|
|
58
58
|
}>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
|
|
59
|
-
|
|
59
|
+
modelValue: unknown[];
|
|
60
60
|
showTitleFieldInTab: boolean;
|
|
61
61
|
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & {
|
|
62
62
|
Addition: import('vue').DefineComponent<import('../array-base/types').IArrayBaseAdditionProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('../array-base/types').IArrayBaseAdditionProps> & Readonly<{}>, {
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { observable as
|
|
4
|
-
import "@formily/
|
|
5
|
-
import "@formily/
|
|
6
|
-
import {
|
|
7
|
-
import { composeExport as H } from "../__builtins__/shared/utils.mjs";
|
|
8
|
-
import { ArrayBase as c } from "../array-base/index.mjs";
|
|
1
|
+
import { ArrayBase as y } from "../array-base/index.mjs";
|
|
2
|
+
import { defineComponent as P, ref as A, createElementBlock as s, openBlock as a, normalizeClass as i, unref as e, createBlock as d, withCtx as h, createElementVNode as I, createCommentVNode as k, createVNode as T, Fragment as v, renderList as F, toDisplayString as q, normalizeStyle as z } from "vue";
|
|
3
|
+
import { observable as K, autorun as V } from "@formily/reactive";
|
|
4
|
+
import { isArr as w } from "@formily/shared";
|
|
5
|
+
import { useField as N, useFieldSchema as D, RecursionField as _ } from "@silver-formily/vue";
|
|
6
|
+
import { ElScrollbar as M, ElBadge as G, ElEmpty as H } from "element-plus";
|
|
9
7
|
import { isRemoveComponent as B, isAdditionComponent as J, getArrayItemSchema as O } from "../array-base/utils.mjs";
|
|
10
8
|
import { prefixCls as n, isTabTitleComponent as E } from "./utils.mjs";
|
|
11
|
-
import
|
|
9
|
+
import { composeExport as Q } from "../__builtins__/shared/utils.mjs";
|
|
10
|
+
import '../styles/array-list-tabs/index.css';const U = ["id", "aria-controls", "onClick"], W = ["id", "aria-labelledby"], X = /* @__PURE__ */ P({
|
|
12
11
|
name: "FArrayListTabs",
|
|
13
12
|
__name: "array-list-tabs",
|
|
14
13
|
props: {
|
|
@@ -20,150 +19,153 @@ import '../styles/array-list-tabs/index.css';const Q = ["id", "aria-controls", "
|
|
|
20
19
|
type: Boolean,
|
|
21
20
|
default: !1
|
|
22
21
|
},
|
|
23
|
-
|
|
22
|
+
modelValue: {
|
|
24
23
|
type: Array,
|
|
25
24
|
default: () => []
|
|
26
25
|
}
|
|
27
26
|
},
|
|
28
27
|
setup(R) {
|
|
29
|
-
const o = R, S =
|
|
30
|
-
const
|
|
31
|
-
return
|
|
28
|
+
const o = R, S = N(), g = D(), l = S.value, p = g.value, f = A(0), { getKey: C, keyMap: j } = y.useKey(g.value), b = K.computed(() => o.showTitleFieldInTab ? l.value.map((m, u) => {
|
|
29
|
+
const r = l.path.concat(u);
|
|
30
|
+
return l.form.queryFeedbacks({
|
|
32
31
|
type: "error",
|
|
33
|
-
path: `${
|
|
32
|
+
path: `${r}.*(!${o.tabTitleField})`
|
|
34
33
|
}).length;
|
|
35
|
-
}) :
|
|
36
|
-
const
|
|
37
|
-
return
|
|
34
|
+
}) : l.value.map((m, u) => {
|
|
35
|
+
const r = l.path.concat(u);
|
|
36
|
+
return l.form.queryFeedbacks({
|
|
38
37
|
type: "error",
|
|
39
|
-
path: `${
|
|
38
|
+
path: `${r}.**`
|
|
40
39
|
}).length;
|
|
41
|
-
})),
|
|
42
|
-
|
|
40
|
+
})), $ = A();
|
|
41
|
+
V(() => {
|
|
43
42
|
if (o.showTitleFieldInTab) {
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
b.value[
|
|
43
|
+
const m = l.value.map((u, r) => [
|
|
44
|
+
r,
|
|
45
|
+
b.value[r]
|
|
47
46
|
].join("|")).join(",");
|
|
48
|
-
|
|
47
|
+
$.value = m;
|
|
49
48
|
} else {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
b.value[
|
|
49
|
+
const m = l.value.map((u, r) => [
|
|
50
|
+
r,
|
|
51
|
+
u?.[o.tabTitleField],
|
|
52
|
+
b.value[r]
|
|
54
53
|
].join("|")).join(",");
|
|
55
|
-
|
|
54
|
+
$.value = m;
|
|
56
55
|
}
|
|
57
|
-
}),
|
|
58
|
-
|
|
56
|
+
}), V(() => {
|
|
57
|
+
l.value.length > 0 && f.value >= l.value.length && (f.value = l.value.length - 1);
|
|
59
58
|
});
|
|
60
|
-
function L(
|
|
61
|
-
return `${
|
|
59
|
+
function L(m) {
|
|
60
|
+
return `${m?.[o.tabTitleField] || "未命名条目"}`;
|
|
62
61
|
}
|
|
63
|
-
return (
|
|
62
|
+
return (m, u) => (a(), s("div", {
|
|
64
63
|
class: i(e(n))
|
|
65
64
|
}, [
|
|
66
|
-
(
|
|
67
|
-
key: o.
|
|
65
|
+
(a(), d(e(y), {
|
|
66
|
+
key: o.modelValue.length,
|
|
68
67
|
"key-map": e(j)
|
|
69
68
|
}, {
|
|
70
|
-
default:
|
|
69
|
+
default: h(() => [
|
|
71
70
|
I("ul", {
|
|
72
71
|
class: i(`${e(n)}_list`)
|
|
73
72
|
}, [
|
|
74
|
-
|
|
73
|
+
T(e(M), {
|
|
75
74
|
class: i(`${e(n)}_list--scroll-wrapper`)
|
|
76
75
|
}, {
|
|
77
|
-
default:
|
|
78
|
-
(
|
|
76
|
+
default: h(() => [
|
|
77
|
+
(a(!0), s(v, null, F(o.modelValue, (r, t) => (a(), d(e(y).Item, {
|
|
79
78
|
key: t,
|
|
80
79
|
index: t,
|
|
81
|
-
record:
|
|
80
|
+
record: r
|
|
82
81
|
}, {
|
|
83
|
-
default:
|
|
84
|
-
(
|
|
85
|
-
id: `${e(
|
|
86
|
-
key:
|
|
82
|
+
default: h(() => [
|
|
83
|
+
(a(), s("li", {
|
|
84
|
+
id: `${e(l).props.name}-tab-${t}`,
|
|
85
|
+
key: $.value,
|
|
87
86
|
class: i([
|
|
88
87
|
`${e(n)}_list-item`,
|
|
89
|
-
|
|
88
|
+
f.value === t && "is-active"
|
|
90
89
|
]),
|
|
91
90
|
role: "tab",
|
|
92
|
-
"aria-controls": `${e(
|
|
93
|
-
onClick: () =>
|
|
91
|
+
"aria-controls": `${e(l).props.name}-tab-panel-${t}`,
|
|
92
|
+
onClick: () => f.value = t
|
|
94
93
|
}, [
|
|
95
94
|
I("div", {
|
|
96
95
|
class: i(`${e(n)}_list-item--content`)
|
|
97
96
|
}, [
|
|
98
|
-
|
|
97
|
+
T(e(G), {
|
|
99
98
|
class: i([`${e(n)}-errors-badge`]),
|
|
100
99
|
value: e(b).value[t],
|
|
101
100
|
offset: [5, 0],
|
|
102
101
|
hidden: e(b).value[t] === 0
|
|
103
102
|
}, {
|
|
104
|
-
default:
|
|
105
|
-
o.showTitleFieldInTab ? (
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
103
|
+
default: h(() => [
|
|
104
|
+
o.showTitleFieldInTab ? (a(), s(v, { key: 1 }, [
|
|
105
|
+
e(w)(e(p).items) ? k("", !0) : (a(), d(e(_), {
|
|
106
|
+
key: 0,
|
|
107
|
+
schema: e(p).items,
|
|
108
|
+
name: t,
|
|
109
|
+
"filter-properties": (c) => e(E)(c, o.tabTitleField),
|
|
110
|
+
"only-render-properties": ""
|
|
111
|
+
}, null, 8, ["schema", "name", "filter-properties"]))
|
|
112
|
+
], 64)) : (a(), s("span", {
|
|
112
113
|
key: 0,
|
|
113
114
|
class: i(`${e(n)}_list-item--title`)
|
|
114
|
-
}, q(L(
|
|
115
|
+
}, q(L(r)), 3))
|
|
115
116
|
]),
|
|
116
117
|
_: 2
|
|
117
118
|
}, 1032, ["class", "value", "hidden"])
|
|
118
119
|
], 2),
|
|
119
|
-
|
|
120
|
-
|
|
120
|
+
e(w)(e(p).items) ? k("", !0) : (a(), d(e(_), {
|
|
121
|
+
key: 0,
|
|
122
|
+
schema: e(p).items,
|
|
121
123
|
name: t,
|
|
122
|
-
"filter-properties": (
|
|
124
|
+
"filter-properties": (c) => e(B)(c),
|
|
123
125
|
"only-render-properties": ""
|
|
124
|
-
}, null, 8, ["schema", "name", "filter-properties"])
|
|
125
|
-
], 10,
|
|
126
|
+
}, null, 8, ["schema", "name", "filter-properties"]))
|
|
127
|
+
], 10, U))
|
|
126
128
|
]),
|
|
127
129
|
_: 2
|
|
128
130
|
}, 1032, ["index", "record"]))), 128))
|
|
129
131
|
]),
|
|
130
132
|
_: 1
|
|
131
133
|
}, 8, ["class"]),
|
|
132
|
-
(
|
|
133
|
-
e(J)(
|
|
134
|
+
(a(!0), s(v, null, F(e(p).properties, (r, t) => (a(), s(v, { key: t }, [
|
|
135
|
+
e(J)(r) ? (a(), d(e(_), {
|
|
134
136
|
key: 0,
|
|
135
|
-
schema:
|
|
137
|
+
schema: r,
|
|
136
138
|
name: "addition"
|
|
137
|
-
}, null, 8, ["schema"])) :
|
|
139
|
+
}, null, 8, ["schema"])) : k("", !0)
|
|
138
140
|
], 64))), 128))
|
|
139
141
|
], 2),
|
|
140
|
-
o.
|
|
142
|
+
o.modelValue.length === 0 ? (a(), s("div", {
|
|
141
143
|
key: 0,
|
|
142
144
|
class: i(`${e(n)}-tabpane`)
|
|
143
145
|
}, [
|
|
144
|
-
|
|
145
|
-
], 2)) :
|
|
146
|
-
(
|
|
147
|
-
key: e(
|
|
146
|
+
T(e(H), { "image-size": 100 })
|
|
147
|
+
], 2)) : k("", !0),
|
|
148
|
+
(a(!0), s(v, null, F(o.modelValue, (r, t) => (a(), d(e(y).Item, {
|
|
149
|
+
key: e(C)(r, t),
|
|
148
150
|
index: t,
|
|
149
|
-
record:
|
|
151
|
+
record: r
|
|
150
152
|
}, {
|
|
151
|
-
default:
|
|
152
|
-
(
|
|
153
|
-
id: `${e(
|
|
154
|
-
key: e(
|
|
153
|
+
default: h(() => [
|
|
154
|
+
(a(), s("div", {
|
|
155
|
+
id: `${e(l).props.name}-tab-panel-${t}`,
|
|
156
|
+
key: e(C)(r, t),
|
|
155
157
|
class: i(`${e(n)}-tabpane`),
|
|
156
|
-
style: z({ display:
|
|
158
|
+
style: z({ display: f.value === t ? void 0 : "none" }),
|
|
157
159
|
role: "tabpanel",
|
|
158
|
-
"aria-labelledby": `${e(
|
|
160
|
+
"aria-labelledby": `${e(l).props.name}-tab-${t}`
|
|
159
161
|
}, [
|
|
160
|
-
|
|
161
|
-
schema: e(O)(e(
|
|
162
|
+
T(e(_), {
|
|
163
|
+
schema: e(O)(e(p), t),
|
|
162
164
|
name: t,
|
|
163
|
-
"filter-properties": (
|
|
165
|
+
"filter-properties": (c) => e(B)(c) ? !1 : o.showTitleFieldInTab ? !e(E)(c, o.tabTitleField) : !0,
|
|
164
166
|
"only-render-properties": ""
|
|
165
167
|
}, null, 8, ["schema", "name", "filter-properties"])
|
|
166
|
-
], 14,
|
|
168
|
+
], 14, W))
|
|
167
169
|
]),
|
|
168
170
|
_: 2
|
|
169
171
|
}, 1032, ["index", "record"]))), 128))
|
|
@@ -172,9 +174,9 @@ import '../styles/array-list-tabs/index.css';const Q = ["id", "aria-controls", "
|
|
|
172
174
|
}, 8, ["key-map"]))
|
|
173
175
|
], 2));
|
|
174
176
|
}
|
|
175
|
-
}), se =
|
|
176
|
-
Addition:
|
|
177
|
-
Remove:
|
|
177
|
+
}), se = Q(X, {
|
|
178
|
+
Addition: y.Addition,
|
|
179
|
+
Remove: y.Remove
|
|
178
180
|
});
|
|
179
181
|
export {
|
|
180
182
|
se as ArrayListTabs,
|