@silver-formily/element-plus 2.0.1 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/README.en-US.md +32 -0
  2. package/README.md +32 -35
  3. package/esm/__builtins__/index.mjs +15 -16
  4. package/esm/__builtins__/shared/index.mjs +11 -12
  5. package/esm/__builtins__/shared/transform-component.d.ts +2 -6
  6. package/esm/__builtins__/shared/transform-component.mjs +16 -33
  7. package/esm/__builtins__/shared/transform-component.mjs.map +1 -1
  8. package/esm/__builtins__/shared/utils.mjs +10 -10
  9. package/esm/__builtins__/shared/utils.mjs.map +1 -1
  10. package/esm/array-base/index.mjs +58 -58
  11. package/esm/array-base/index.mjs.map +1 -1
  12. package/esm/array-cards/index.mjs +44 -44
  13. package/esm/array-cards/index.mjs.map +1 -1
  14. package/esm/array-collapse/index.mjs +59 -58
  15. package/esm/array-collapse/index.mjs.map +1 -1
  16. package/esm/array-items/index.mjs +46 -43
  17. package/esm/array-items/index.mjs.map +1 -1
  18. package/esm/array-list-tabs/index.mjs +15 -14
  19. package/esm/array-list-tabs/index.mjs.map +1 -1
  20. package/esm/array-table/array-table.d.ts +28 -0
  21. package/esm/array-table/index.d.ts +28 -0
  22. package/esm/array-table/index.mjs +113 -111
  23. package/esm/array-table/index.mjs.map +1 -1
  24. package/esm/array-table/types.d.ts +1 -0
  25. package/esm/cascader/index.mjs +19 -20
  26. package/esm/cascader/index.mjs.map +1 -1
  27. package/esm/checkbox/checkbox-group.d.ts +1 -4
  28. package/esm/checkbox/index.d.ts +442 -379
  29. package/esm/checkbox/index.mjs.map +1 -1
  30. package/esm/editable/editable.d.ts +16 -12
  31. package/esm/editable/index.d.ts +8 -6
  32. package/esm/editable/index.mjs +110 -112
  33. package/esm/editable/index.mjs.map +1 -1
  34. package/esm/form-button-group/index.mjs +29 -28
  35. package/esm/form-button-group/index.mjs.map +1 -1
  36. package/esm/form-collapse/index.mjs +42 -43
  37. package/esm/form-collapse/index.mjs.map +1 -1
  38. package/esm/form-dialog/index.d.ts +1 -1
  39. package/esm/form-dialog/index.mjs +4 -4
  40. package/esm/form-dialog/index.mjs.map +1 -1
  41. package/esm/form-dialog/types.d.ts +6 -6
  42. package/esm/form-drawer/index.d.ts +1 -1
  43. package/esm/form-drawer/index.mjs +4 -4
  44. package/esm/form-drawer/index.mjs.map +1 -1
  45. package/esm/form-drawer/types.d.ts +6 -6
  46. package/esm/form-grid/index.d.ts +1 -183
  47. package/esm/form-grid/index.mjs +1 -1
  48. package/esm/form-grid/index.mjs.map +1 -1
  49. package/esm/form-item/form-item.d.ts +2 -1
  50. package/esm/form-item/index.d.ts +12 -6
  51. package/esm/form-item/index.mjs +163 -155
  52. package/esm/form-item/index.mjs.map +1 -1
  53. package/esm/form-item/types.d.ts +0 -1
  54. package/esm/form-layout/form-layout.d.ts +0 -1
  55. package/esm/form-layout/form-layout.mjs +53 -52
  56. package/esm/form-layout/form-layout.mjs.map +1 -1
  57. package/esm/form-layout/types.d.ts +0 -2
  58. package/esm/form-layout/utils.d.ts +3 -3
  59. package/esm/form-layout/utils.mjs +48 -43
  60. package/esm/form-layout/utils.mjs.map +1 -1
  61. package/esm/form-step/index.mjs +27 -25
  62. package/esm/form-step/index.mjs.map +1 -1
  63. package/esm/form-tab/index.d.ts +1 -26
  64. package/esm/form-tab/index.mjs +30 -30
  65. package/esm/form-tab/index.mjs.map +1 -1
  66. package/esm/index.d.ts +3 -0
  67. package/esm/index.mjs +44 -38
  68. package/esm/index.mjs.map +1 -1
  69. package/esm/input/index.mjs.map +1 -1
  70. package/esm/input-number/index.d.ts +258 -147
  71. package/esm/pagination/pagination.mjs +109 -110
  72. package/esm/pagination/pagination.mjs.map +1 -1
  73. package/esm/password/index.mjs.map +1 -1
  74. package/esm/preview-text/index.d.ts +5 -0
  75. package/esm/preview-text/index.mjs +165 -141
  76. package/esm/preview-text/index.mjs.map +1 -1
  77. package/esm/preview-text/rate.d.ts +5 -0
  78. package/esm/preview-text/utils.d.ts +5 -5
  79. package/esm/preview-text/utils.mjs.map +1 -1
  80. package/esm/radio/index.d.ts +344 -194
  81. package/esm/radio/index.mjs.map +1 -1
  82. package/esm/rate/index.d.ts +187 -0
  83. package/esm/rate/index.mjs +14 -0
  84. package/esm/rate/index.mjs.map +1 -0
  85. package/esm/reset/index.d.ts +1 -62
  86. package/esm/reset/index.mjs +1 -1
  87. package/esm/reset/index.mjs.map +1 -1
  88. package/esm/segmented/index.d.ts +26 -0
  89. package/esm/segmented/index.mjs +37 -0
  90. package/esm/segmented/index.mjs.map +1 -0
  91. package/esm/segmented/segmented.d.ts +25 -0
  92. package/esm/select/index.mjs +8 -8
  93. package/esm/select/index.mjs.map +1 -1
  94. package/esm/select-table/index.d.ts +28 -0
  95. package/esm/select-table/index.mjs +48 -47
  96. package/esm/select-table/index.mjs.map +1 -1
  97. package/esm/select-table/select-table.d.ts +56 -0
  98. package/esm/slider/index.d.ts +177 -0
  99. package/esm/slider/index.mjs +14 -0
  100. package/esm/slider/index.mjs.map +1 -0
  101. package/esm/submit/index.d.ts +1 -47
  102. package/esm/submit/index.mjs +1 -1
  103. package/esm/submit/index.mjs.map +1 -1
  104. package/esm/switch/index.d.ts +225 -189
  105. package/esm/time-select/index.d.ts +163 -103
  106. package/esm/transfer/index.d.ts +196 -115
  107. package/esm/transfer/index.mjs.map +1 -1
  108. package/esm/tree/index.mjs +26 -26
  109. package/esm/tree/index.mjs.map +1 -1
  110. package/esm/tree-select/index.mjs.map +1 -1
  111. package/esm/upload/index.d.ts +404 -399
  112. package/esm/upload/index.mjs.map +1 -1
  113. package/esm/upload/upload.d.ts +800 -790
  114. package/esm/vendor/icon.mjs.map +1 -1
  115. package/esm/vendor/lodash.mjs +12 -20
  116. package/esm/vendor/lodash.mjs.map +1 -1
  117. package/esm/vendor/runtime.mjs +29 -24
  118. package/esm/vendor/runtime.mjs.map +1 -1
  119. package/esm/vendor/shared.esm-bundler.mjs +2 -2
  120. package/esm/vendor/sizes.mjs.map +1 -1
  121. package/esm/vendor/types.mjs +5 -5
  122. package/esm/vendor/types.mjs.map +1 -1
  123. package/package.json +8 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/array-base/array-base-addition.vue","../../src/array-base/array-base-index.vue","../../src/array-base/array-base-inner.vue","../../src/array-base/array-base-item.vue","../../src/array-base/array-base-move-down.vue","../../src/array-base/array-base-move-up.vue","../../src/array-base/array-base-remove.vue","../../src/array-base/array-base-sort-handle.vue","../../src/array-base/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport type { IArrayBaseAdditionProps } from './types'\r\nimport { Plus } from '@element-plus/icons-vue'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, getDefaultValue, prefixCls, useArray } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseAddition',\r\n})\r\n\r\nconst props = defineProps({\n method: { default: 'push' },\n defaultValue: null,\n title: null\n})\r\n\r\nconst self = useField()\r\nconst base = useArray()\r\n\r\nfunction onAddItemClick() {\r\n const defaultValue = getDefaultValue(props.defaultValue, base?.schema.value)\r\n if (props.method === 'unshift') {\r\n base?.field?.value.unshift(defaultValue)\r\n base.attrs?.add?.(0)\r\n }\r\n else {\r\n base?.field?.value.push(defaultValue)\r\n base.attrs?.add?.(base?.field?.value?.value?.length - 1)\r\n }\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"base.field.value.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-addition`\"\r\n :icon=\"Plus\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"添加条目\"\r\n @click=\"onAddItemClick\"\r\n >\r\n {{ self.title || props.title }}\r\n </ElLink>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport { prefixCls, useIndex } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseIndex',\r\n})\r\n\r\nconst index = useIndex()\r\n</script>\r\n\r\n<template>\r\n <span :class=\"`${prefixCls}-index`\">\r\n <slot :index=\"index\">\r\n #{{ index + 1 }}.\r\n </slot>\r\n </span>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { ArrayField } from '@formily/core'\r\nimport type { IArrayBaseProps } from './types'\r\nimport { useField, useFieldSchema } from '@silver-formily/vue'\r\nimport { provide, useAttrs } from 'vue'\r\nimport { ArrayBaseSymbol } from './symbols'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseInner',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps({\n disabled: { type: Boolean },\n keyMap: null\n})\r\n\r\nconst field = useField<ArrayField>()\r\nconst schema = useFieldSchema()\r\n\r\nprovide(ArrayBaseSymbol, {\r\n field,\r\n schema,\r\n props,\r\n attrs: useAttrs(),\r\n keyMap: props.keyMap,\r\n})\r\n</script>\r\n\r\n<template>\r\n <slot />\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { IArrayBaseItemProps } from './types'\r\nimport { provide } from 'vue'\r\nimport { ItemSymbol } from './symbols'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseItem',\r\n})\r\n\r\nconst props = defineProps({\n index: null,\n record: null\n})\r\n\r\nprovide(ItemSymbol, props)\r\n</script>\r\n\r\n<template>\r\n <slot />\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { IArrayBaseOperationProps } from './types'\r\nimport { ArrowDown } from '@element-plus/icons-vue'\r\nimport { isArr } from '@formily/shared'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, prefixCls, useArray, useIndex } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseMoveDown',\r\n})\r\n\r\nconst props = defineProps({\n title: null\n})\r\n\r\nconst indexRef = useIndex()\r\nconst base = useArray()\r\n\r\nfunction handleClick() {\r\n if (isArr(base?.keyMap)) {\r\n base.keyMap.splice(\r\n indexRef.value + 1,\r\n 0,\r\n base.keyMap.splice(indexRef.value, 1)[0],\r\n )\r\n }\r\n base?.field.value.moveDown(indexRef.value as number)\r\n base?.attrs?.moveDown?.(indexRef.value as number)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"base?.field.value.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-move-down`\"\r\n size=\"small\"\r\n :icon=\"ArrowDown\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"下移条目\"\r\n @click.stop=\"handleClick\"\r\n >\r\n <slot>\r\n {{ props.title }}\r\n </slot>\r\n </ElLink>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { IArrayBaseOperationProps } from './types'\r\nimport { ArrowUp } from '@element-plus/icons-vue'\r\nimport { isArr } from '@formily/shared'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, prefixCls, useArray, useIndex } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseMoveUp',\r\n})\r\n\r\nconst props = defineProps({\n title: null\n})\r\n\r\nconst indexRef = useIndex()\r\nconst base = useArray()\r\n\r\nfunction handleClick() {\r\n if (isArr(base?.keyMap)) {\r\n base.keyMap.splice(\r\n indexRef.value - 1,\r\n 0,\r\n base.keyMap.splice(indexRef.value, 1)[0],\r\n )\r\n }\r\n base?.field.value.moveUp(indexRef.value as number)\r\n base?.attrs?.moveUp?.(indexRef.value as number)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"base?.field.value.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-move-up`\"\r\n size=\"small\"\r\n :icon=\"ArrowUp\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"上移条目\"\r\n @click.stop=\"handleClick\"\r\n >\r\n <slot>\r\n {{ props.title }}\r\n </slot>\r\n </ElLink>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { IArrayBaseOperationProps } from './types'\r\nimport { Delete } from '@element-plus/icons-vue'\r\nimport { isArr } from '@formily/shared'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, prefixCls, useArray, useIndex } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseRemove',\r\n})\r\n\r\nconst props = defineProps({\n title: null\n})\r\n\r\nconst indexRef = useIndex()\r\nconst base = useArray()\r\n\r\nfunction handleClick() {\r\n if (isArr(base?.keyMap)) {\r\n base?.keyMap?.splice(indexRef.value, 1)\r\n }\r\n\r\n base?.field.value.remove(indexRef.value as number)\r\n base?.attrs?.remove?.(indexRef.value as number)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"base?.field.value.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-remove`\"\r\n size=\"small\"\r\n :icon=\"Delete\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"移除条目\"\r\n @click.stop=\"handleClick\"\r\n >\r\n <slot>\r\n {{ props.title }}\r\n </slot>\r\n </ElLink>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport { Rank } from '@element-plus/icons-vue'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, prefixCls, useArray } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseSortHandle',\r\n})\r\n\r\nconst array = useArray()\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"array.field.value?.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-sort-handle`\"\r\n size=\"small\"\r\n :icon=\"Rank\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"拖拽排序\"\r\n aria-dropeffect=\"move\"\r\n />\r\n</template>\r\n","import { composeExport } from '../__builtins__/shared'\r\nimport ArrayBaseAddition from './array-base-addition.vue'\r\nimport ArrayBaseIndex from './array-base-index.vue'\r\nimport ArrayBaseInner from './array-base-inner.vue'\r\nimport ArrayBaseItem from './array-base-item.vue'\r\nimport ArrayBaseMoveDown from './array-base-move-down.vue'\r\nimport ArrayBaseMoveUp from './array-base-move-up.vue'\r\nimport ArrayBaseRemove from './array-base-remove.vue'\r\nimport ArrayBaseSortHandle from './array-base-sort-handle.vue'\r\nimport { useArray, useIndex, useKey, useRecord } from './utils'\r\nimport './style.scss'\r\n\r\nexport const ArrayBase = composeExport(ArrayBaseInner, {\r\n Index: ArrayBaseIndex,\r\n Item: ArrayBaseItem,\r\n SortHandle: ArrayBaseSortHandle,\r\n Addition: ArrayBaseAddition,\r\n Remove: ArrayBaseRemove,\r\n MoveDown: ArrayBaseMoveDown,\r\n MoveUp: ArrayBaseMoveUp,\r\n useArray,\r\n useIndex,\r\n useKey,\r\n useRecord,\r\n})\r\n"],"names":["props","__props","self","useField","base","useArray","onAddItemClick","defaultValue","getDefaultValue","_unref","_createBlock","ElLink","prefixCls","Plus","compatibleUnderlineProp","_createTextVNode","_toDisplayString","index","useIndex","_createElementBlock","_renderSlot","_ctx","field","schema","useFieldSchema","provide","ArrayBaseSymbol","useAttrs","ItemSymbol","indexRef","handleClick","isArr","ArrowDown","ArrowUp","Delete","array","Rank","ArrayBase","composeExport","ArrayBaseInner","ArrayBaseIndex","ArrayBaseItem","ArrayBaseSortHandle","ArrayBaseAddition","ArrayBaseRemove","ArrayBaseMoveDown","ArrayBaseMoveUp","useKey","useRecord"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/array-base/array-base-addition.vue","../../src/array-base/array-base-index.vue","../../src/array-base/array-base-inner.vue","../../src/array-base/array-base-item.vue","../../src/array-base/array-base-move-down.vue","../../src/array-base/array-base-move-up.vue","../../src/array-base/array-base-remove.vue","../../src/array-base/array-base-sort-handle.vue","../../src/array-base/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport type { IArrayBaseAdditionProps } from './types'\r\nimport { Plus } from '@element-plus/icons-vue'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, getDefaultValue, prefixCls, useArray } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseAddition',\r\n})\r\n\r\nconst props = withDefaults(defineProps<IArrayBaseAdditionProps>(), {\r\n method: 'push',\r\n})\r\n\r\nconst self = useField()\r\nconst base = useArray()\r\n\r\nfunction onAddItemClick() {\r\n const defaultValue = getDefaultValue(props.defaultValue, base?.schema.value)\r\n if (props.method === 'unshift') {\r\n base?.field?.value.unshift(defaultValue)\r\n base.attrs?.add?.(0)\r\n }\r\n else {\r\n base?.field?.value.push(defaultValue)\r\n base.attrs?.add?.(base?.field?.value?.value?.length - 1)\r\n }\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"base.field.value.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-addition`\"\r\n :icon=\"Plus\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"添加条目\"\r\n @click=\"onAddItemClick\"\r\n >\r\n {{ self.title || props.title }}\r\n </ElLink>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport { prefixCls, useIndex } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseIndex',\r\n})\r\n\r\nconst index = useIndex()\r\n</script>\r\n\r\n<template>\r\n <span :class=\"`${prefixCls}-index`\">\r\n <slot :index=\"index\">\r\n #{{ index + 1 }}.\r\n </slot>\r\n </span>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { ArrayField } from '@formily/core'\r\nimport type { IArrayBaseProps } from './types'\r\nimport { useField, useFieldSchema } from '@silver-formily/vue'\r\nimport { provide, useAttrs } from 'vue'\r\nimport { ArrayBaseSymbol } from './symbols'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseInner',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps<IArrayBaseProps>()\r\n\r\nconst field = useField<ArrayField>()\r\nconst schema = useFieldSchema()\r\n\r\nprovide(ArrayBaseSymbol, {\r\n field,\r\n schema,\r\n props,\r\n attrs: useAttrs(),\r\n keyMap: props.keyMap,\r\n})\r\n</script>\r\n\r\n<template>\r\n <slot />\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { IArrayBaseItemProps } from './types'\r\nimport { provide } from 'vue'\r\nimport { ItemSymbol } from './symbols'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseItem',\r\n})\r\n\r\nconst props = defineProps<IArrayBaseItemProps>()\r\n\r\nprovide(ItemSymbol, props)\r\n</script>\r\n\r\n<template>\r\n <slot />\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { IArrayBaseOperationProps } from './types'\r\nimport { ArrowDown } from '@element-plus/icons-vue'\r\nimport { isArr } from '@formily/shared'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, prefixCls, useArray, useIndex } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseMoveDown',\r\n})\r\n\r\nconst props = defineProps<IArrayBaseOperationProps>()\r\n\r\nconst indexRef = useIndex()\r\nconst base = useArray()\r\n\r\nfunction handleClick() {\r\n if (isArr(base?.keyMap)) {\r\n base.keyMap.splice(\r\n indexRef.value + 1,\r\n 0,\r\n base.keyMap.splice(indexRef.value, 1)[0],\r\n )\r\n }\r\n base?.field.value.moveDown(indexRef.value as number)\r\n base?.attrs?.moveDown?.(indexRef.value as number)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"base?.field.value.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-move-down`\"\r\n size=\"small\"\r\n :icon=\"ArrowDown\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"下移条目\"\r\n @click.stop=\"handleClick\"\r\n >\r\n <slot>\r\n {{ props.title }}\r\n </slot>\r\n </ElLink>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { IArrayBaseOperationProps } from './types'\r\nimport { ArrowUp } from '@element-plus/icons-vue'\r\nimport { isArr } from '@formily/shared'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, prefixCls, useArray, useIndex } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseMoveUp',\r\n})\r\n\r\nconst props = defineProps<IArrayBaseOperationProps>()\r\n\r\nconst indexRef = useIndex()\r\nconst base = useArray()\r\n\r\nfunction handleClick() {\r\n if (isArr(base?.keyMap)) {\r\n base.keyMap.splice(\r\n indexRef.value - 1,\r\n 0,\r\n base.keyMap.splice(indexRef.value, 1)[0],\r\n )\r\n }\r\n base?.field.value.moveUp(indexRef.value as number)\r\n base?.attrs?.moveUp?.(indexRef.value as number)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"base?.field.value.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-move-up`\"\r\n size=\"small\"\r\n :icon=\"ArrowUp\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"上移条目\"\r\n @click.stop=\"handleClick\"\r\n >\r\n <slot>\r\n {{ props.title }}\r\n </slot>\r\n </ElLink>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { IArrayBaseOperationProps } from './types'\r\nimport { Delete } from '@element-plus/icons-vue'\r\nimport { isArr } from '@formily/shared'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, prefixCls, useArray, useIndex } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseRemove',\r\n})\r\n\r\nconst props = defineProps<IArrayBaseOperationProps>()\r\n\r\nconst indexRef = useIndex()\r\nconst base = useArray()\r\n\r\nfunction handleClick() {\r\n if (isArr(base?.keyMap)) {\r\n base?.keyMap?.splice(indexRef.value, 1)\r\n }\r\n\r\n base?.field.value.remove(indexRef.value as number)\r\n base?.attrs?.remove?.(indexRef.value as number)\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"base?.field.value.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-remove`\"\r\n size=\"small\"\r\n :icon=\"Delete\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"移除条目\"\r\n @click.stop=\"handleClick\"\r\n >\r\n <slot>\r\n {{ props.title }}\r\n </slot>\r\n </ElLink>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport { Rank } from '@element-plus/icons-vue'\r\nimport { ElLink } from 'element-plus'\r\nimport { compatibleUnderlineProp, prefixCls, useArray } from './utils'\r\n\r\ndefineOptions({\r\n name: 'ArrayBaseSortHandle',\r\n})\r\n\r\nconst array = useArray()\r\n</script>\r\n\r\n<template>\r\n <ElLink\r\n v-if=\"array.field.value?.pattern === 'editable'\"\r\n :class=\"`${prefixCls}-sort-handle`\"\r\n size=\"small\"\r\n :icon=\"Rank\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n role=\"button\"\r\n aria-label=\"拖拽排序\"\r\n aria-dropeffect=\"move\"\r\n />\r\n</template>\r\n","import { composeExport } from '../__builtins__/shared'\r\nimport ArrayBaseAddition from './array-base-addition.vue'\r\nimport ArrayBaseIndex from './array-base-index.vue'\r\nimport ArrayBaseInner from './array-base-inner.vue'\r\nimport ArrayBaseItem from './array-base-item.vue'\r\nimport ArrayBaseMoveDown from './array-base-move-down.vue'\r\nimport ArrayBaseMoveUp from './array-base-move-up.vue'\r\nimport ArrayBaseRemove from './array-base-remove.vue'\r\nimport ArrayBaseSortHandle from './array-base-sort-handle.vue'\r\nimport { useArray, useIndex, useKey, useRecord } from './utils'\r\nimport './style.scss'\r\n\r\nexport const ArrayBase = composeExport(ArrayBaseInner, {\r\n Index: ArrayBaseIndex,\r\n Item: ArrayBaseItem,\r\n SortHandle: ArrayBaseSortHandle,\r\n Addition: ArrayBaseAddition,\r\n Remove: ArrayBaseRemove,\r\n MoveDown: ArrayBaseMoveDown,\r\n MoveUp: ArrayBaseMoveUp,\r\n useArray,\r\n useIndex,\r\n useKey,\r\n useRecord,\r\n})\r\n"],"names":["props","__props","self","useField","base","useArray","onAddItemClick","defaultValue","getDefaultValue","_unref","_createBlock","ElLink","prefixCls","Plus","compatibleUnderlineProp","_createTextVNode","_toDisplayString","index","useIndex","_createElementBlock","_renderSlot","_ctx","field","schema","useFieldSchema","provide","ArrayBaseSymbol","useAttrs","ItemSymbol","indexRef","handleClick","isArr","ArrowDown","ArrowUp","Delete","array","Rank","ArrayBase","composeExport","ArrayBaseInner","ArrayBaseIndex","ArrayBaseItem","ArrayBaseSortHandle","ArrayBaseAddition","ArrayBaseRemove","ArrayBaseMoveDown","ArrayBaseMoveUp","useKey","useRecord"],"mappings":"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"}
@@ -1,71 +1,71 @@
1
1
  import { ArrayBase as r } from "../array-base/index.mjs";
2
- import { defineComponent as B, ref as N, createElementBlock as c, openBlock as o, normalizeClass as k, createVNode as a, unref as e, withCtx as s, createBlock as y, createCommentVNode as v, mergeProps as A, Fragment as h, renderList as R, createElementVNode as x, createTextVNode as $, toDisplayString as b } from "vue";
2
+ import { defineComponent as B, ref as N, createElementBlock as c, openBlock as a, normalizeClass as A, createVNode as s, unref as e, withCtx as n, createBlock as v, createCommentVNode as h, mergeProps as R, Fragment as C, renderList as x, createElementVNode as E, createTextVNode as $, toDisplayString as b } from "vue";
3
3
  import { autorun as D } from "@formily/reactive";
4
- import { isArr as E } from "@formily/shared";
5
- import { useField as H, useFieldSchema as K, RecursionField as d } from "@silver-formily/vue";
4
+ import { isArr as d } from "@formily/shared";
5
+ import { useField as H, useFieldSchema as K, RecursionField as f } from "@silver-formily/vue";
6
6
  import { ElCard as I, ElEmpty as P, ElRow as U } from "element-plus";
7
7
  import { stylePrefix as j } from "../__builtins__/configs/index.mjs";
8
- import { isIndexComponent as g, isOperationComponent as w, getArrayItemSchema as f, isAdditionComponent as z } from "../array-base/utils.mjs";
8
+ import { isIndexComponent as g, isOperationComponent as w, getArrayItemSchema as y, isAdditionComponent as z } from "../array-base/utils.mjs";
9
9
  import { composeExport as L } from "../__builtins__/shared/utils.mjs";
10
10
  import '../styles/array-cards/index.css';const O = /* @__PURE__ */ B({
11
11
  name: "FArrayCards",
12
12
  __name: "array-cards",
13
13
  props: {
14
- title: null,
15
- header: null,
16
- footer: null,
17
- bodyStyle: null,
18
- bodyClass: null,
14
+ title: {},
15
+ header: {},
16
+ footer: {},
17
+ bodyStyle: {},
18
+ bodyClass: {},
19
19
  shadow: { default: "never" },
20
- modelValue: null
20
+ modelValue: {}
21
21
  },
22
22
  setup(S) {
23
- const p = S, V = H(), C = K(), n = V.value, m = C.value, i = `${j}-array-cards`, { getKey: F, keyMap: M } = r.useKey(C.value), _ = N(n.value);
23
+ const u = S, V = H(), _ = K(), o = V.value, m = _.value, i = `${j}-array-cards`, { getKey: F, keyMap: M } = r.useKey(_.value), k = N(d(o.value) ? o.value : []);
24
24
  return D(() => {
25
- _.value = [...n.value];
26
- }), (T, q) => (o(), c("div", {
27
- class: k(i)
25
+ k.value = d(o.value) ? [...o.value] : [];
26
+ }), (T, q) => (a(), c("div", {
27
+ class: A(i)
28
28
  }, [
29
- a(e(r), { "key-map": e(M) }, {
30
- default: s(() => [
31
- e(E)(e(n).value) && e(n).value.length > 0 ? v("", !0) : (o(), y(e(I), A({
29
+ s(e(r), { "key-map": e(M) }, {
30
+ default: n(() => [
31
+ e(d)(e(o).value) && e(o).value.length > 0 ? h("", !0) : (a(), v(e(I), R({
32
32
  key: 0,
33
33
  class: `${i}-item`
34
- }, p), {
35
- default: s(() => [
36
- a(e(P))
34
+ }, u), {
35
+ default: n(() => [
36
+ s(e(P))
37
37
  ]),
38
38
  _: 1
39
39
  }, 16, ["class"])),
40
- e(E)(p.modelValue) ? (o(!0), c(h, { key: 1 }, R(_.value, (u, t) => (o(), y(e(r).Item, {
41
- key: e(F)(u, t),
40
+ e(d)(u.modelValue) ? (a(!0), c(C, { key: 1 }, x(k.value, (p, t) => (a(), v(e(r).Item, {
41
+ key: e(F)(p, t),
42
42
  index: t,
43
- record: u
43
+ record: p
44
44
  }, {
45
- default: s(() => [
46
- a(e(I), A({ ref_for: !0 }, p, {
45
+ default: n(() => [
46
+ s(e(I), R({ ref_for: !0 }, u, {
47
47
  class: `${i}-item`
48
48
  }), {
49
- header: s(() => [
50
- a(e(U), {
49
+ header: n(() => [
50
+ s(e(U), {
51
51
  type: "flex",
52
52
  justify: "space-between"
53
53
  }, {
54
- default: s(() => [
55
- x("span", null, [
56
- a(e(d), {
57
- schema: e(f)(e(m), t),
54
+ default: n(() => [
55
+ E("span", null, [
56
+ s(e(f), {
57
+ schema: e(y)(e(m), t),
58
58
  name: t,
59
59
  "filter-properties": (l) => e(g)(l),
60
60
  "only-render-properties": !0
61
61
  }, null, 8, ["schema", "name", "filter-properties"]),
62
- $(" " + b(e(f)(e(m), t).title ?? p.title ?? e(n).title), 1)
62
+ $(" " + b(e(y)(e(m), t).title ?? u.title ?? e(o).title), 1)
63
63
  ]),
64
- x("span", {
65
- class: k(`${i}-extra-container`)
64
+ E("span", {
65
+ class: A(`${i}-extra-container`)
66
66
  }, [
67
- a(e(d), {
68
- schema: e(f)(e(m), t),
67
+ s(e(f), {
68
+ schema: e(y)(e(m), t),
69
69
  name: t,
70
70
  "filter-properties": (l) => e(w)(l),
71
71
  "only-render-properties": !0
@@ -75,9 +75,9 @@ import '../styles/array-cards/index.css';const O = /* @__PURE__ */ B({
75
75
  _: 2
76
76
  }, 1024)
77
77
  ]),
78
- default: s(() => [
79
- a(e(d), {
80
- schema: e(f)(e(m), t),
78
+ default: n(() => [
79
+ s(e(f), {
80
+ schema: e(y)(e(m), t),
81
81
  name: t,
82
82
  "filter-properties": (l) => !e(g)(l) && !e(w)(l)
83
83
  }, null, 8, ["schema", "name", "filter-properties"])
@@ -86,13 +86,13 @@ import '../styles/array-cards/index.css';const O = /* @__PURE__ */ B({
86
86
  }, 1040, ["class"])
87
87
  ]),
88
88
  _: 2
89
- }, 1032, ["index", "record"]))), 128)) : v("", !0),
90
- (o(!0), c(h, null, R(e(m).properties, (u, t) => (o(), c(h, { key: t }, [
91
- e(z)(u) ? (o(), y(e(d), {
89
+ }, 1032, ["index", "record"]))), 128)) : h("", !0),
90
+ (a(!0), c(C, null, x(e(m).properties, (p, t) => (a(), c(C, { key: t }, [
91
+ e(z)(p) ? (a(), v(e(f), {
92
92
  key: 0,
93
- schema: u,
93
+ schema: p,
94
94
  name: "addition"
95
- }, null, 8, ["schema"])) : v("", !0)
95
+ }, null, 8, ["schema"])) : h("", !0)
96
96
  ], 64))), 128))
97
97
  ]),
98
98
  _: 1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/array-cards/array-cards.vue","../../src/array-cards/index.ts"],"sourcesContent":["<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 { ElCard, ElEmpty, ElRow } from 'element-plus'\r\nimport { ref } from 'vue'\r\nimport { stylePrefix } from '../__builtins__/configs'\r\nimport { ArrayBase } from '../array-base'\r\nimport { getArrayItemSchema, isAdditionComponent, isIndexComponent, isOperationComponent } from '../array-base/utils'\r\n\r\ndefineOptions({\r\n name: 'FArrayCards',\r\n})\r\n\r\nconst props = defineProps({\n title: null,\n header: null,\n footer: null,\n bodyStyle: null,\n bodyClass: null,\n shadow: { default: 'never' },\n modelValue: null\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-cards`\r\nconst { getKey, keyMap } = ArrayBase.useKey(schemaRef.value)\r\n\r\nconst dataSource = ref(field.value)\r\n\r\nautorun(() => {\r\n dataSource.value = [...field.value]\r\n})\r\n</script>\r\n\r\n<template>\r\n <div :class=\"prefixCls\">\r\n <ArrayBase :key-map=\"keyMap\">\r\n <!-- 空状态渲染 -->\r\n <ElCard\r\n v-if=\"!(isArr(field.value) && field.value.length > 0)\"\r\n :class=\"`${prefixCls}-item`\"\r\n v-bind=\"props\"\r\n >\r\n <ElEmpty />\r\n </ElCard>\r\n\r\n <!-- 数据项渲染 -->\r\n <template v-if=\"isArr(props.modelValue)\">\r\n <ArrayBase.Item\r\n v-for=\"(item, index) of dataSource\"\r\n :key=\"getKey(item, index)\"\r\n :index=\"index\"\r\n :record=\"item\"\r\n >\r\n <ElCard\r\n v-bind=\"props\"\r\n :class=\"`${prefixCls}-item`\"\r\n >\r\n <template #header>\r\n <ElRow type=\"flex\" justify=\"space-between\">\r\n <span>\r\n <RecursionField\r\n :schema=\"getArrayItemSchema(schema, index)\"\r\n :name=\"index\"\r\n :filter-properties=\"(schema: ISchema) => isIndexComponent(schema)\"\r\n :only-render-properties=\"true\"\r\n />\r\n {{ getArrayItemSchema(schema, index).title ?? props.title ?? field.title }}\r\n </span>\r\n <span :class=\"`${prefixCls}-extra-container`\">\r\n <RecursionField\r\n :schema=\"getArrayItemSchema(schema, index)\"\r\n :name=\"index\"\r\n :filter-properties=\"(schema: ISchema) => isOperationComponent(schema)\"\r\n :only-render-properties=\"true\"\r\n />\r\n </span>\r\n </ElRow>\r\n </template>\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 </ElCard>\r\n </ArrayBase.Item>\r\n </template>\r\n\r\n <!-- 添加按钮渲染 -->\r\n <template v-for=\"(itemSchema, key) in schema.properties\" :key=\"key\">\r\n <RecursionField\r\n v-if=\"isAdditionComponent(itemSchema)\"\r\n :schema=\"itemSchema\"\r\n name=\"addition\"\r\n />\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 ArrayCardsInner from './array-cards.vue'\r\nimport './style.scss'\r\n\r\nexport const ArrayCards = composeExport(ArrayCardsInner, {\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 ArrayCards\r\n"],"names":["props","__props","fieldRef","useField","schemaRef","useFieldSchema","field","schema","prefixCls","stylePrefix","getKey","keyMap","ArrayBase","dataSource","ref","autorun","_createElementBlock","_createVNode","_unref","isArr","_openBlock","_createBlock","_mergeProps","ElEmpty","_Fragment","_renderList","item","index","ElCard","ElRow","_createElementVNode","RecursionField","getArrayItemSchema","isIndexComponent","_createTextVNode","_toDisplayString","isOperationComponent","itemSchema","key","isAdditionComponent","ArrayCards","composeExport","ArrayCardsInner"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/array-cards/array-cards.vue","../../src/array-cards/index.ts"],"sourcesContent":["<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 { ElCard, ElEmpty, ElRow } from 'element-plus'\r\nimport { ref } from 'vue'\r\nimport { stylePrefix } from '../__builtins__/configs'\r\nimport { ArrayBase } from '../array-base'\r\nimport { getArrayItemSchema, isAdditionComponent, isIndexComponent, isOperationComponent } from '../array-base/utils'\r\n\r\ndefineOptions({\r\n name: 'FArrayCards',\r\n})\r\n\r\nconst props = withDefaults(defineProps<{\r\n title?: string\r\n header?: string\r\n footer?: string\r\n bodyStyle?: Record<string, string>\r\n bodyClass?: string\r\n shadow?: 'always' | 'hover' | 'never'\r\n modelValue: any\r\n}>(), {\r\n shadow: 'never',\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-cards`\r\nconst { getKey, keyMap } = ArrayBase.useKey(schemaRef.value)\r\n\r\nconst dataSource = ref(isArr(field.value) ? field.value : [])\n\r\nautorun(() => {\n dataSource.value = isArr(field.value) ? [...field.value] : []\n})\n</script>\r\n\r\n<template>\r\n <div :class=\"prefixCls\">\r\n <ArrayBase :key-map=\"keyMap\">\r\n <!-- 空状态渲染 -->\r\n <ElCard\r\n v-if=\"!(isArr(field.value) && field.value.length > 0)\"\r\n :class=\"`${prefixCls}-item`\"\r\n v-bind=\"props\"\r\n >\r\n <ElEmpty />\r\n </ElCard>\r\n\r\n <!-- 数据项渲染 -->\r\n <template v-if=\"isArr(props.modelValue)\">\r\n <ArrayBase.Item\r\n v-for=\"(item, index) of dataSource\"\r\n :key=\"getKey(item, index)\"\r\n :index=\"index\"\r\n :record=\"item\"\r\n >\r\n <ElCard\r\n v-bind=\"props\"\r\n :class=\"`${prefixCls}-item`\"\r\n >\r\n <template #header>\r\n <ElRow type=\"flex\" justify=\"space-between\">\r\n <span>\r\n <RecursionField\r\n :schema=\"getArrayItemSchema(schema, index)\"\r\n :name=\"index\"\r\n :filter-properties=\"(schema: ISchema) => isIndexComponent(schema)\"\r\n :only-render-properties=\"true\"\r\n />\r\n {{ getArrayItemSchema(schema, index).title ?? props.title ?? field.title }}\r\n </span>\r\n <span :class=\"`${prefixCls}-extra-container`\">\r\n <RecursionField\r\n :schema=\"getArrayItemSchema(schema, index)\"\r\n :name=\"index\"\r\n :filter-properties=\"(schema: ISchema) => isOperationComponent(schema)\"\r\n :only-render-properties=\"true\"\r\n />\r\n </span>\r\n </ElRow>\r\n </template>\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 </ElCard>\r\n </ArrayBase.Item>\r\n </template>\r\n\r\n <!-- 添加按钮渲染 -->\r\n <template v-for=\"(itemSchema, key) in schema.properties\" :key=\"key\">\r\n <RecursionField\r\n v-if=\"isAdditionComponent(itemSchema)\"\r\n :schema=\"itemSchema\"\r\n name=\"addition\"\r\n />\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 ArrayCardsInner from './array-cards.vue'\r\nimport './style.scss'\r\n\r\nexport const ArrayCards = composeExport(ArrayCardsInner, {\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 ArrayCards\r\n"],"names":["props","__props","fieldRef","useField","schemaRef","useFieldSchema","field","schema","prefixCls","stylePrefix","getKey","keyMap","ArrayBase","dataSource","ref","isArr","autorun","_createElementBlock","_createVNode","_unref","_openBlock","_createBlock","_mergeProps","ElEmpty","_Fragment","_renderList","item","index","ElCard","ElRow","_createElementVNode","RecursionField","getArrayItemSchema","isIndexComponent","_createTextVNode","_toDisplayString","isOperationComponent","itemSchema","key","isAdditionComponent","ArrayCards","composeExport","ArrayCardsInner"],"mappings":"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"}
@@ -1,40 +1,41 @@
1
1
  import { ArrayBase as o } from "../array-base/index.mjs";
2
- import { defineComponent as N, createBlock as p, openBlock as l, unref as e, mergeProps as R, withCtx as f, renderSlot as $, createElementVNode as w, createCommentVNode as S, createVNode as C, normalizeClass as b, createTextVNode as T, toDisplayString as j, ref as B, watchEffect as G, createElementBlock as A, Fragment as k, renderList as M } from "vue";
3
- import { observable as J, autorun as L } from "@formily/reactive";
4
- import { isArr as E } from "@formily/shared";
5
- import { useField as D, useFieldSchema as P, RecursionField as g } from "@silver-formily/vue";
6
- import { ElCollapseItem as Q, ElBadge as W, ElCard as X, ElEmpty as Y, ElCollapse as Z } from "element-plus";
7
- import { useIndex as ee, isIndexComponent as U, isOperationComponent as H, getArrayItemSchema as re, isAdditionComponent as te } from "../array-base/utils.mjs";
2
+ import { defineComponent as N, createBlock as d, openBlock as l, unref as e, mergeProps as E, withCtx as f, renderSlot as $, createElementVNode as w, createCommentVNode as S, createVNode as g, normalizeClass as D, createTextVNode as T, toDisplayString as j, ref as B, watchEffect as G, createElementBlock as A, Fragment as R, renderList as M } from "vue";
3
+ import { isArr as C } from "@formily/shared";
4
+ import { formilyComputed as J } from "@silver-formily/reactive-vue";
5
+ import { useField as P, useFieldSchema as U, RecursionField as I } from "@silver-formily/vue";
6
+ import { ElCollapseItem as L, ElBadge as Q, ElCard as W, ElEmpty as X, ElCollapse as Y } from "element-plus";
7
+ import { useIndex as Z, isIndexComponent as b, isOperationComponent as H, getArrayItemSchema as ee, isAdditionComponent as re } from "../array-base/utils.mjs";
8
8
  import { prefixCls as _ } from "./utils.mjs";
9
- import { useCleanAttrs as K, composeExport as ae } from "../__builtins__/shared/utils.mjs";
9
+ import { useCleanAttrs as K, composeExport as te } from "../__builtins__/shared/utils.mjs";
10
+ import { autorun as ae } from "@formily/reactive";
10
11
  import '../styles/array-collapse/index.css';const oe = { style: { flex: "1", display: "flex", "align-items": "center" } }, le = /* @__PURE__ */ N({
11
12
  name: "FArrayCollapseItem",
12
13
  inheritAttrs: !1,
13
14
  __name: "array-collapse-item",
14
15
  setup(x) {
15
- const y = D().value, r = P().value.parent, m = ee(), i = J.computed(() => {
16
- const v = y.address.concat();
16
+ const y = P().value, r = U().value.parent, m = Z(), u = J(() => {
17
+ const h = y.address.concat();
17
18
  return y.form.queryFeedbacks({
18
19
  type: "error",
19
- address: `${v}.**`
20
+ address: `${h}.**`
20
21
  }).length;
21
22
  }), { props: c } = K();
22
- return (v, V) => (l(), p(e(Q), R({ name: e(m) }, e(c)), {
23
+ return (h, V) => (l(), d(e(L), E({ name: e(m) }, e(c)), {
23
24
  title: f(() => [
24
25
  w("div", oe, [
25
- e(E)(e(r).items) ? S("", !0) : (l(), p(e(g), {
26
+ e(C)(e(r).items) ? S("", !0) : (l(), d(e(I), {
26
27
  key: 0,
27
28
  schema: e(r).items,
28
29
  name: e(m),
29
- "filter-properties": (n) => e(U)(n),
30
+ "filter-properties": (s) => e(b)(s),
30
31
  "only-render-properties": !0
31
32
  }, null, 8, ["schema", "name", "filter-properties"])),
32
- $(v.$slots, "title", {}, () => [
33
- C(e(W), {
34
- class: b([`${e(_)}-errors-badge`]),
35
- value: e(i).value,
33
+ $(h.$slots, "title", {}, () => [
34
+ g(e(Q), {
35
+ class: D([`${e(_)}-errors-badge`]),
36
+ value: e(u),
36
37
  offset: [5, -2],
37
- hidden: e(i).value === 0
38
+ hidden: e(u) === 0
38
39
  }, {
39
40
  default: f(() => [
40
41
  T(j(e(r).items?.["x-component-props"]?.title), 1)
@@ -44,21 +45,21 @@ import '../styles/array-collapse/index.css';const oe = { style: { flex: "1", dis
44
45
  ])
45
46
  ]),
46
47
  w("div", null, [
47
- C(e(g), {
48
+ g(e(I), {
48
49
  schema: Array.isArray(e(r).items) ? e(r).items[e(m)] || e(r).items[0] : e(r).items,
49
50
  name: e(m),
50
- "filter-properties": (n) => e(H)(n),
51
+ "filter-properties": (s) => e(H)(s),
51
52
  "only-render-properties": !0
52
53
  }, null, 8, ["schema", "name", "filter-properties"])
53
54
  ])
54
55
  ]),
55
56
  default: f(() => [
56
- $(v.$slots, "default")
57
+ $(h.$slots, "default")
57
58
  ]),
58
59
  _: 3
59
60
  }, 16, ["name"]));
60
61
  }
61
- }), se = /* @__PURE__ */ N({
62
+ }), ne = /* @__PURE__ */ N({
62
63
  name: "FArrayCollapse",
63
64
  inheritAttrs: !1,
64
65
  __name: "array-collapse",
@@ -70,74 +71,74 @@ import '../styles/array-collapse/index.css';const oe = { style: { flex: "1", dis
70
71
  }
71
72
  },
72
73
  setup(x) {
73
- const h = x, y = D(), I = P(), r = y.value, m = I.value, { props: i } = K(["modelValue", "onUpdate:modelValue"]), c = B([]), { getKey: v, keyMap: V } = o.useKey(I.value), n = B(r.value);
74
- L(() => {
75
- E(r.value) && (n.value = [...r.value]);
74
+ const v = x, y = P(), k = U(), r = y.value, m = k.value, { props: u } = K(["modelValue", "onUpdate:modelValue"]), c = B([]), { getKey: h, keyMap: V } = o.useKey(k.value), s = B(C(r.value) ? r.value : []);
75
+ ae(() => {
76
+ s.value = C(r.value) ? [...r.value] : [];
76
77
  });
77
78
  function F(a) {
78
- return Array.from({ length: a }).map((s, t) => t);
79
+ return Array.from({ length: a }).map((n, t) => t);
79
80
  }
80
- function O(a, s, t = !1) {
81
- return t ? 0 : a < s ? F(a) : F(s);
81
+ function O(a, n, t = !1) {
82
+ return t ? 0 : a < n ? F(a) : F(n);
82
83
  }
83
- function q(a, s, t = !1) {
84
+ function q(a, n, t = !1) {
84
85
  if (t)
85
- return s;
86
+ return n;
86
87
  /* istanbul ignore if -- @preserve */
87
- return E(a) ? a.length <= s ? a.concat(s) : a.reduce((u, d) => d === s ? [...u, d, d + 1] : u.concat(d + 1), []) : s;
88
+ return C(a) ? a.length <= n ? a.concat(n) : a.reduce((i, p) => p === n ? [...i, p, p + 1] : i.concat(p + 1), []) : n;
88
89
  }
89
90
  G(() => {
90
- !r.modified && n.value.length > 0 && (c.value = O(
91
- n.value.length,
92
- h.defaultOpenPanelCount,
93
- i.value.accordion
91
+ !r.modified && s.value.length > 0 && (c.value = O(
92
+ s.value.length,
93
+ v.defaultOpenPanelCount,
94
+ u.value.accordion
94
95
  ));
95
96
  });
96
97
  function z(a) {
97
98
  c.value = a;
98
99
  }
99
- return (a, s) => (l(), A("div", {
100
- class: b(e(_))
100
+ return (a, n) => (l(), A("div", {
101
+ class: D(e(_))
101
102
  }, [
102
- (l(), p(e(o), {
103
- key: n.value.length,
103
+ (l(), d(e(o), {
104
+ key: s.value.length,
104
105
  "key-map": e(V),
105
106
  add: (t) => {
106
107
  c.value = q(
107
108
  c.value,
108
109
  t,
109
- e(i).accordion
110
+ e(u).accordion
110
111
  );
111
112
  }
112
113
  }, {
113
114
  default: f(() => [
114
- !Array.isArray(h.modelValue) || h.modelValue.length === 0 ? (l(), p(e(X), R({
115
+ !Array.isArray(v.modelValue) || v.modelValue.length === 0 ? (l(), d(e(W), E({
115
116
  key: 0,
116
117
  class: [`${e(_)}-item`],
117
118
  shadow: "never"
118
- }, e(i), {
119
- header: e(i).title || e(r).title
119
+ }, e(u), {
120
+ header: e(u).title || e(r).title
120
121
  }), {
121
122
  default: f(() => [
122
- C(e(Y))
123
+ g(e(X))
123
124
  ]),
124
125
  _: 1
125
- }, 16, ["class", "header"])) : (l(), p(e(Z), R({
126
+ }, 16, ["class", "header"])) : (l(), d(e(Y), E({
126
127
  key: 1,
127
128
  "model-value": c.value,
128
129
  class: `${e(_)}-item`
129
- }, e(i), { onChange: z }), {
130
+ }, e(u), { onChange: z }), {
130
131
  default: f(() => [
131
- (l(!0), A(k, null, M(n.value, (t, u) => (l(), p(e(o).Item, {
132
- key: e(v)(t, u),
133
- index: u,
132
+ (l(!0), A(R, null, M(s.value, (t, i) => (l(), d(e(o).Item, {
133
+ key: e(h)(t, i),
134
+ index: i,
134
135
  record: t
135
136
  }, {
136
137
  default: f(() => [
137
- C(e(g), {
138
- schema: e(re)(e(m), u),
139
- name: u,
140
- "filter-properties": (d) => !e(U)(d) && !e(H)(d)
138
+ g(e(I), {
139
+ schema: e(ee)(e(m), i),
140
+ name: i,
141
+ "filter-properties": (p) => !e(b)(p) && !e(H)(p)
141
142
  }, null, 8, ["schema", "name", "filter-properties"])
142
143
  ]),
143
144
  _: 2
@@ -145,8 +146,8 @@ import '../styles/array-collapse/index.css';const oe = { style: { flex: "1", dis
145
146
  ]),
146
147
  _: 1
147
148
  }, 16, ["model-value", "class"])),
148
- (l(!0), A(k, null, M(e(m).properties, (t, u) => (l(), A(k, { key: u }, [
149
- e(te)(t) ? (l(), p(e(g), {
149
+ (l(!0), A(R, null, M(e(m).properties, (t, i) => (l(), A(R, { key: i }, [
150
+ e(re)(t) ? (l(), d(e(I), {
150
151
  key: 0,
151
152
  schema: t,
152
153
  name: "addition"
@@ -157,7 +158,7 @@ import '../styles/array-collapse/index.css';const oe = { style: { flex: "1", dis
157
158
  }, 8, ["key-map", "add"]))
158
159
  ], 2));
159
160
  }
160
- }), he = ae(se, {
161
+ }), ye = te(ne, {
161
162
  Item: le,
162
163
  Index: o.Index,
163
164
  SortHandle: o.SortHandle,
@@ -170,7 +171,7 @@ import '../styles/array-collapse/index.css';const oe = { style: { flex: "1", dis
170
171
  useRecord: o.useRecord
171
172
  });
172
173
  export {
173
- he as ArrayCollapse,
174
- he as default
174
+ ye as ArrayCollapse,
175
+ ye as default
175
176
  };
176
177
  //# sourceMappingURL=index.mjs.map
@@ -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>\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
+ {"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 { isArr } from '@formily/shared'\r\nimport { formilyComputed } from '@silver-formily/reactive-vue'\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 = formilyComputed(() => {\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\"\r\n :offset=\"[5, -2]\"\r\n :hidden=\"errorCount === 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(isArr(field.value) ? field.value : [])\n\r\nautorun(() => {\n dataSource.value = isArr(field.value) ? [...field.value] : []\n})\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","formilyComputed","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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"}