@silver-formily/element-plus 3.0.0 → 3.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.
Files changed (137) hide show
  1. package/README.en-US.md +32 -32
  2. package/README.md +32 -32
  3. package/esm/__builtins__/configs/index.mjs.map +1 -1
  4. package/esm/__builtins__/index.mjs +18 -18
  5. package/esm/__builtins__/shared/loading.mjs.map +1 -1
  6. package/esm/__builtins__/shared/simple-version-compare.mjs.map +1 -1
  7. package/esm/__builtins__/shared/transform-component.mjs.map +1 -1
  8. package/esm/__builtins__/shared/use-enter-submit.mjs.map +1 -1
  9. package/esm/__builtins__/shared/utils.mjs.map +1 -1
  10. package/esm/array-base/index.mjs +63 -59
  11. package/esm/array-base/index.mjs.map +1 -1
  12. package/esm/array-base/symbols.mjs.map +1 -1
  13. package/esm/array-base/utils.mjs +37 -31
  14. package/esm/array-base/utils.mjs.map +1 -1
  15. package/esm/array-cards/index.mjs +36 -33
  16. package/esm/array-cards/index.mjs.map +1 -1
  17. package/esm/array-collapse/index.mjs +39 -37
  18. package/esm/array-collapse/index.mjs.map +1 -1
  19. package/esm/array-collapse/utils.mjs +9 -2
  20. package/esm/array-collapse/utils.mjs.map +1 -1
  21. package/esm/array-items/index.mjs +38 -34
  22. package/esm/array-items/index.mjs.map +1 -1
  23. package/esm/array-list-tabs/index.mjs +38 -36
  24. package/esm/array-list-tabs/index.mjs.map +1 -1
  25. package/esm/array-list-tabs/utils.mjs +12 -5
  26. package/esm/array-list-tabs/utils.mjs.map +1 -1
  27. package/esm/array-table/index.mjs +62 -60
  28. package/esm/array-table/index.mjs.map +1 -1
  29. package/esm/array-table/utils.mjs +18 -11
  30. package/esm/array-table/utils.mjs.map +1 -1
  31. package/esm/array-tabs/index.mjs +28 -25
  32. package/esm/array-tabs/index.mjs.map +1 -1
  33. package/esm/autocomplete/index.mjs +22 -18
  34. package/esm/autocomplete/index.mjs.map +1 -1
  35. package/esm/cascader/index.mjs +22 -18
  36. package/esm/cascader/index.mjs.map +1 -1
  37. package/esm/checkbox/index.mjs +20 -16
  38. package/esm/checkbox/index.mjs.map +1 -1
  39. package/esm/color-picker/index.mjs +9 -6
  40. package/esm/color-picker/index.mjs.map +1 -1
  41. package/esm/color-picker-panel/index.mjs +9 -6
  42. package/esm/color-picker-panel/index.mjs.map +1 -1
  43. package/esm/date-picker/index.mjs +14 -11
  44. package/esm/date-picker/index.mjs.map +1 -1
  45. package/esm/date-picker/utils.mjs.map +1 -1
  46. package/esm/date-picker-panel/index.mjs +14 -11
  47. package/esm/date-picker-panel/index.mjs.map +1 -1
  48. package/esm/editable/index.mjs +33 -30
  49. package/esm/editable/index.mjs.map +1 -1
  50. package/esm/form/form.mjs +6 -6
  51. package/esm/form/form.mjs.map +1 -1
  52. package/esm/form-button-group/index.mjs +18 -14
  53. package/esm/form-button-group/index.mjs.map +1 -1
  54. package/esm/form-button-group/utils.mjs +9 -2
  55. package/esm/form-button-group/utils.mjs.map +1 -1
  56. package/esm/form-collapse/index.mjs +21 -18
  57. package/esm/form-collapse/index.mjs.map +1 -1
  58. package/esm/form-collapse/utils.mjs.map +1 -1
  59. package/esm/form-dialog/index.d.ts +1 -1
  60. package/esm/form-dialog/index.mjs +22 -22
  61. package/esm/form-dialog/index.mjs.map +1 -1
  62. package/esm/form-dialog/types.d.ts +13 -5
  63. package/esm/form-drawer/index.d.ts +1 -1
  64. package/esm/form-drawer/index.mjs +21 -21
  65. package/esm/form-drawer/index.mjs.map +1 -1
  66. package/esm/form-drawer/types.d.ts +13 -5
  67. package/esm/form-grid/hooks.mjs.map +1 -1
  68. package/esm/form-grid/index.mjs +21 -18
  69. package/esm/form-grid/index.mjs.map +1 -1
  70. package/esm/form-item/index.mjs +55 -53
  71. package/esm/form-item/index.mjs.map +1 -1
  72. package/esm/form-item/utils.mjs.map +1 -1
  73. package/esm/form-layout/form-layout.mjs +14 -10
  74. package/esm/form-layout/form-layout.mjs.map +1 -1
  75. package/esm/form-layout/utils.mjs.map +1 -1
  76. package/esm/form-step/index.mjs +30 -27
  77. package/esm/form-step/index.mjs.map +1 -1
  78. package/esm/form-step/utils.mjs.map +1 -1
  79. package/esm/form-tab/hooks.mjs.map +1 -1
  80. package/esm/form-tab/index.mjs +25 -23
  81. package/esm/form-tab/index.mjs.map +1 -1
  82. package/esm/form-tab/utils.mjs.map +1 -1
  83. package/esm/index.mjs +72 -72
  84. package/esm/input/index.mjs +30 -26
  85. package/esm/input/index.mjs.map +1 -1
  86. package/esm/input-number/index.mjs +11 -8
  87. package/esm/input-number/index.mjs.map +1 -1
  88. package/esm/input-tag/index.mjs +20 -16
  89. package/esm/input-tag/index.mjs.map +1 -1
  90. package/esm/mention/index.mjs +24 -20
  91. package/esm/mention/index.mjs.map +1 -1
  92. package/esm/pagination/components/jumper.mjs.map +1 -1
  93. package/esm/pagination/components/next.mjs.map +1 -1
  94. package/esm/pagination/components/pager.mjs.map +1 -1
  95. package/esm/pagination/components/prev.mjs.map +1 -1
  96. package/esm/pagination/components/total.mjs.map +1 -1
  97. package/esm/pagination/pagination.mjs.map +1 -1
  98. package/esm/password/index.mjs.map +1 -1
  99. package/esm/preview-text/index.mjs +31 -27
  100. package/esm/preview-text/index.mjs.map +1 -1
  101. package/esm/preview-text/utils.mjs.map +1 -1
  102. package/esm/query-form/default-components.mjs.map +1 -1
  103. package/esm/query-form/hooks.mjs.map +1 -1
  104. package/esm/query-form/index.mjs +51 -48
  105. package/esm/query-form/index.mjs.map +1 -1
  106. package/esm/query-form-item/index.mjs +37 -34
  107. package/esm/query-form-item/index.mjs.map +1 -1
  108. package/esm/radio/index.mjs +29 -25
  109. package/esm/radio/index.mjs.map +1 -1
  110. package/esm/rate/index.mjs +13 -10
  111. package/esm/rate/index.mjs.map +1 -1
  112. package/esm/reset/index.mjs.map +1 -1
  113. package/esm/segmented/index.mjs +16 -12
  114. package/esm/segmented/index.mjs.map +1 -1
  115. package/esm/select/index.mjs +26 -22
  116. package/esm/select/index.mjs.map +1 -1
  117. package/esm/select-table/index.mjs +16 -12
  118. package/esm/select-table/index.mjs.map +1 -1
  119. package/esm/shared/overlay-elements.mjs.map +1 -1
  120. package/esm/slider/index.mjs +13 -10
  121. package/esm/slider/index.mjs.map +1 -1
  122. package/esm/submit/index.mjs.map +1 -1
  123. package/esm/switch/index.mjs.map +1 -1
  124. package/esm/time-picker/index.mjs +9 -6
  125. package/esm/time-picker/index.mjs.map +1 -1
  126. package/esm/time-select/index.mjs +9 -6
  127. package/esm/time-select/index.mjs.map +1 -1
  128. package/esm/transfer/index.mjs.map +1 -1
  129. package/esm/tree/index.mjs +33 -29
  130. package/esm/tree/index.mjs.map +1 -1
  131. package/esm/tree/utils.mjs.map +1 -1
  132. package/esm/tree-select/index.mjs +18 -14
  133. package/esm/tree-select/index.mjs.map +1 -1
  134. package/esm/upload/index.mjs +10 -7
  135. package/esm/upload/index.mjs.map +1 -1
  136. package/esm/vendor/sizes.mjs.map +1 -1
  137. package/package.json +6 -5
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/query-form/query-form-light.vue","../../src/query-form/query-form.vue","../../src/query-form/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { Form } from '@formily/core'\r\nimport type { IQueryFormLightProps } from './types'\r\nimport { reaction, toJS } from '@formily/reactive'\r\nimport { useFieldSchema, useForm } from '@silver-formily/vue'\r\nimport { throttle } from 'lodash-es'\r\nimport { computed, onUnmounted, useSlots } from 'vue'\r\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\r\nimport { Form as FForm } from '../form'\r\nimport { useQueryFormForm, useQueryFormSchemaField } from './hooks'\r\n\r\ndefineOptions({\r\n name: 'FQueryFormLight',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = withDefaults(defineProps<IQueryFormLightProps>(), {\r\n components: () => ({}),\r\n throttleWait: 300,\r\n})\r\nconst emit = defineEmits<{\r\n (e: 'autoSubmit', values: Form['values']): void\r\n (e: 'autoSubmitFailed', error: any): void\r\n}>()\r\n\r\nconst { props: formProps } = useCleanAttrs(['modelValue', 'onUpdate:modelValue'])\r\nconst slots = useSlots()\r\nconst formRef = useForm()\r\nconst fieldSchemaRef = useFieldSchema()\r\nconst prefixCls = `${stylePrefix}-query-form-light`\r\n\r\nconst { externalForm, activeForm } = useQueryFormForm({\r\n formProps,\r\n fallbackForm: formRef,\r\n})\r\nconst resolvedSchema = computed(() => props.schema ?? fieldSchemaRef.value)\r\n\r\nconst innerFormProps = computed(() => ({\r\n fullness: false,\r\n ...formProps.value,\r\n form: externalForm.value,\r\n}))\r\n\r\nfunction submitByChange() {\r\n const form = activeForm.value\r\n form\r\n .submit((values) => {\r\n emit('autoSubmit', values)\r\n return formProps.value.onAutoSubmit?.(values)\r\n })\r\n .catch((error) => {\r\n emit('autoSubmitFailed', error)\r\n formProps.value.onAutoSubmitFailed?.(error)\r\n })\r\n}\r\n\r\nconst triggerSubmit = throttle(() => {\r\n submitByChange()\r\n}, props.throttleWait, {\r\n leading: false,\r\n trailing: true,\r\n})\r\n\r\nconst dispose = reaction(() => {\r\n const form = activeForm.value\r\n if (!form)\r\n return\r\n return toJS(form.values)\r\n}, () => {\r\n triggerSubmit()\r\n})\r\n\r\nonUnmounted(() => {\r\n dispose()\r\n triggerSubmit.cancel()\r\n})\r\n\r\nconst { hasDefaultSlot, schemaField } = useQueryFormSchemaField({\r\n slots,\r\n schema: resolvedSchema,\r\n schemaField: computed(() => props.schemaField),\r\n components: computed(() => props.components),\r\n})\r\n</script>\r\n\r\n<template>\r\n <FForm v-bind=\"innerFormProps\" :class=\"prefixCls\">\r\n <div :class=\"`${prefixCls}__content`\">\r\n <slot v-if=\"hasDefaultSlot\" />\r\n <component\r\n :is=\"schemaField\"\r\n v-else-if=\"schemaField\"\r\n :schema=\"resolvedSchema\"\r\n />\r\n </div>\r\n </FForm>\r\n</template>\r\n","<script setup lang=\"ts\">\r\nimport type { ISchema } from '@formily/json-schema'\nimport type { Grid, GridNode, IGridOptions } from '@silver-formily/grid'\nimport type { IQueryFormProps, SchemaEntry } from './types'\nimport { ArrowDown, ArrowUp } from '@element-plus/icons-vue'\nimport { Schema } from '@formily/json-schema'\nimport { autorun } from '@formily/reactive'\nimport { createGrid } from '@silver-formily/grid'\nimport { useFieldSchema, useForm } from '@silver-formily/vue'\nimport { ElIcon, ElLink } from 'element-plus'\nimport { computed, onUnmounted, ref, useSlots } from 'vue'\nimport { compatibleUnderlineProp, stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { Form } from '../form'\nimport { FormButtonGroup } from '../form-button-group'\nimport { FormGrid } from '../form-grid'\nimport { Reset } from '../reset'\nimport { Submit } from '../submit'\nimport { useQueryFormForm, useQueryFormSchemaField } from './hooks'\n\r\ndefineOptions({\r\n name: 'FQueryForm',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = withDefaults(defineProps<IQueryFormProps>(), {\r\n components: () => ({}),\r\n gridProps: () => ({}),\r\n defaultExpanded: false,\r\n showToggle: true,\r\n actionsAtRowEnd: false,\r\n submitText: '查询',\r\n resetText: '重置',\r\n expandText: '展开',\r\n collapseText: '收起',\r\n showSubmit: true,\r\n showReset: true,\r\n})\r\n\r\nconst { props: formProps } = useCleanAttrs(['modelValue', 'onUpdate:modelValue'])\r\nconst slots = useSlots()\r\nconst prefixCls = `${stylePrefix}-query-form`\r\nconst FormGridColumn = FormGrid.GridColumn\r\n\r\nconst COLLAPSED_ROWS = 1\r\nconst fieldSchemaRef = useFieldSchema()\r\nconst formRef = useForm()\r\nconst { externalForm, activeForm } = useQueryFormForm({\r\n formProps,\r\n fallbackForm: formRef,\r\n})\r\nconst innerFormProps = computed(() => ({\r\n fullness: true,\r\n ...formProps.value,\r\n form: externalForm.value,\r\n}))\r\n\r\nconst schemaList = computed<SchemaEntry[]>(() => {\r\n const rawSchema = props.schema ?? fieldSchemaRef.value\r\n /* istanbul ignore next -- @preserve defensive: schema can be temporarily absent in external field-schema lifecycle */\r\n if (!rawSchema)\r\n return []\r\n const schema = rawSchema instanceof Schema ? rawSchema : new Schema(rawSchema)\r\n return schema.mapProperties((childSchema: ISchema, name: string | number) => ({\r\n name,\r\n schema: childSchema,\r\n }))\r\n})\r\n\r\nfunction resolveField(name?: string | number) {\r\n return activeForm.value?.query(name).take()\r\n}\r\n\r\nfunction createVisibleContext(\r\n node: GridNode,\r\n grid: Grid<HTMLElement>,\r\n collapsedOverride?: boolean,\r\n) {\r\n const index = node.index ?? 0\r\n const entry = schemaList.value[index]\r\n const schema = entry?.schema\r\n const name = entry?.name ?? schema?.name\r\n return {\r\n field: resolveField(name),\r\n schema,\r\n index,\r\n node,\r\n grid,\r\n collapsed: collapsedOverride ?? grid.maxRows !== Infinity,\r\n breakpoint: grid.breakpoint,\r\n }\r\n}\r\n\r\nfunction defaultVisibleWhen(context: ReturnType<typeof createVisibleContext>) {\r\n if (!context.collapsed)\r\n return true\r\n\r\n const shadowRow = context.node.shadowRow ?? 0\r\n const withinRows = shadowRow < COLLAPSED_ROWS + 1\r\n if (!withinRows)\r\n return false\r\n\r\n const isCollapsible = getFieldRowCount(context.grid) > COLLAPSED_ROWS\r\n if (!isCollapsible)\r\n return true\r\n const shadowColumn = context.node.shadowColumn ?? 1\r\n const span = context.node.span ?? 1\r\n const endColumn = shadowColumn + span - 1\r\n if (shadowRow === COLLAPSED_ROWS && endColumn === context.grid.columns)\r\n return false\r\n\r\n return true\r\n}\r\n\r\nfunction resolveVisibleWhen(context: ReturnType<typeof createVisibleContext>) {\r\n const visible = props.visibleWhen\r\n ? props.visibleWhen(context)\r\n : defaultVisibleWhen(context)\r\n return visible !== false\r\n}\r\n\r\nfunction isActionsNode(node: GridNode, grid: Grid<HTMLElement>) {\r\n if ('element' in node && node.element) {\r\n return node.element.dataset.queryFormActions !== undefined\r\n }\r\n return node.index === grid.childSize - 1\r\n}\r\n\r\nfunction getFieldRowCount(grid: Grid<HTMLElement>) {\r\n const rows = (grid.children ?? [])\r\n .filter(node => !isActionsNode(node, grid))\r\n .map(node => node.shadowRow ?? 0)\r\n return new Set(rows).size\r\n}\r\n\r\nconst defaultShouldVisible: IGridOptions['shouldVisible'] = (node, grid) => {\r\n if (isActionsNode(node, grid))\r\n return true\r\n return resolveVisibleWhen(createVisibleContext(node, grid))\r\n}\r\n\r\nconst restGridProps = props.gridProps ?? {}\r\nconst defaultGridProps: Partial<IGridOptions> = restGridProps.minColumns === undefined && restGridProps.maxColumns === undefined\r\n ? { maxColumns: 4 }\r\n : {}\r\n\r\nconst gridOptions: IGridOptions = {\n ...defaultGridProps,\n ...restGridProps,\n maxRows: (props.defaultExpanded || !props.showToggle) ? Infinity : COLLAPSED_ROWS,\n shouldVisible: defaultShouldVisible,\n}\n\nconst grid = createGrid(gridOptions)\n\r\nconst expanded = ref(grid.maxRows === Infinity)\r\nconst gridType = ref<'incomplete-wrap' | 'collapsible' | 'complete-wrap'>('complete-wrap')\r\n\r\nfunction updateType() {\r\n if (!props.showToggle) {\r\n gridType.value = 'incomplete-wrap'\r\n return\r\n }\r\n\r\n if (!props.visibleWhen) {\r\n gridType.value = getFieldRowCount(grid) > COLLAPSED_ROWS\r\n ? 'collapsible'\r\n : 'incomplete-wrap'\r\n return\r\n }\r\n\r\n const nodes = grid.children ?? []\r\n const hasHiddenInCollapsed = nodes.some((node) => {\r\n if (isActionsNode(node, grid))\r\n return false\r\n return !resolveVisibleWhen(createVisibleContext(node, grid, true))\r\n })\r\n /* istanbul ignore next -- @preserve layout branch depends on runtime grid measurement in browser */\r\n if (hasHiddenInCollapsed) {\r\n gridType.value = 'collapsible'\r\n return\r\n }\r\n const realRows = grid.shadowRows\r\n gridType.value = realRows < COLLAPSED_ROWS + 1 ? 'incomplete-wrap' : 'complete-wrap'\r\n}\r\n\r\nconst dispose = autorun(() => {\r\n expanded.value = grid.maxRows === Infinity\r\n updateType()\r\n})\r\n\r\nonUnmounted(dispose)\r\n\r\nfunction toggle() {\r\n if (!props.showToggle)\r\n return\r\n grid.maxRows = grid.maxRows === Infinity ? COLLAPSED_ROWS : Infinity\r\n}\r\n\r\nconst { hasDefaultSlot, schemaField } = useQueryFormSchemaField({\r\n slots,\r\n schema: computed(() => props.schema),\r\n schemaField: computed(() => props.schemaField),\r\n components: computed(() => props.components),\r\n scope: computed(() => props.scope),\r\n})\r\n</script>\r\n\r\n<template>\r\n <Form v-bind=\"innerFormProps\" :class=\"prefixCls\">\r\n <FormGrid :grid=\"grid\">\r\n <slot v-if=\"hasDefaultSlot\" />\r\n <component\r\n :is=\"schemaField\"\r\n v-else-if=\"schemaField\"\r\n :schema=\"props.schema\"\r\n />\r\n <FormGridColumn\r\n :grid-span=\"-1\"\r\n data-query-form-actions\r\n :class=\"[\r\n `${prefixCls}__actions`,\r\n props.actionsAtRowEnd && `${prefixCls}__actions--row-end`,\r\n ]\"\r\n >\r\n <template v-if=\"gridType === 'incomplete-wrap'\">\r\n <FormButtonGroup\r\n :align=\"props.actionsAtRowEnd ? 'right' : 'left'\"\r\n align-form-item\r\n inline\r\n :style=\"props.actionsAtRowEnd && { width: '100%' }\"\r\n >\r\n <slot\r\n name=\"actions\"\r\n :expanded=\"expanded\"\r\n :toggle=\"toggle\"\r\n :type=\"gridType\"\r\n >\r\n <Submit v-if=\"props.showSubmit\" v-bind=\"props.submitProps\">\r\n {{ props.submitText }}\r\n </Submit>\r\n <Reset v-if=\"props.showReset\" v-bind=\"props.resetProps\">\r\n {{ props.resetText }}\r\n </Reset>\r\n </slot>\r\n </FormButtonGroup>\r\n </template>\r\n <template v-else-if=\"gridType === 'collapsible' && props.showToggle\">\r\n <FormButtonGroup\r\n :align=\"props.actionsAtRowEnd ? 'right' : 'left'\"\r\n align-form-item\r\n inline\r\n :style=\"props.actionsAtRowEnd && { width: '100%' }\"\r\n >\r\n <slot\r\n name=\"actions\"\r\n :expanded=\"expanded\"\r\n :toggle=\"toggle\"\r\n :type=\"gridType\"\r\n >\r\n <Submit v-if=\"props.showSubmit\" v-bind=\"props.submitProps\">\r\n {{ props.submitText }}\r\n </Submit>\r\n <Reset v-if=\"props.showReset\" v-bind=\"props.resetProps\">\r\n {{ props.resetText }}\r\n </Reset>\r\n </slot>\r\n <slot\r\n name=\"collapse\"\r\n :expanded=\"expanded\"\r\n :toggle=\"toggle\"\r\n :type=\"gridType\"\r\n >\r\n <ElLink\r\n type=\"primary\"\r\n :underline=\"compatibleUnderlineProp()\"\r\n :class=\"`${prefixCls}__collapse-link`\"\r\n @click=\"toggle\"\r\n >\r\n {{ expanded ? props.collapseText : props.expandText }}\r\n <ElIcon :class=\"`${prefixCls}__collapse-icon`\">\r\n <ArrowUp v-if=\"expanded\" />\r\n <ArrowDown v-else />\r\n </ElIcon>\r\n </ElLink>\r\n </slot>\r\n </FormButtonGroup>\r\n </template>\r\n <template v-else>\r\n <FormButtonGroup\r\n align=\"right\"\r\n inline\r\n style=\"display: flex; width: 100%;\"\r\n >\r\n <slot\r\n name=\"actions\"\r\n :expanded=\"expanded\"\r\n :toggle=\"toggle\"\r\n :type=\"gridType\"\r\n >\r\n <Submit v-if=\"props.showSubmit\" v-bind=\"props.submitProps\">\r\n {{ props.submitText }}\r\n </Submit>\r\n <Reset v-if=\"props.showReset\" v-bind=\"props.resetProps\">\r\n {{ props.resetText }}\r\n </Reset>\r\n </slot>\r\n </FormButtonGroup>\r\n </template>\r\n </FormGridColumn>\r\n </FormGrid>\r\n </Form>\r\n</template>\r\n","import { composeExport } from '../__builtins__/shared'\r\nimport QueryFormLightInner from './query-form-light.vue'\r\nimport QueryFormInner from './query-form.vue'\r\nimport './style.scss'\r\n\r\nexport type { IQueryFormLightProps, IQueryFormProps, QueryFormVisible, QueryFormVisibleContext } from './types'\r\n\r\nexport const QueryForm = composeExport(QueryFormInner, {\r\n Light: QueryFormLightInner,\r\n})\r\n\r\nexport default QueryForm\r\n"],"names":["props","__props","emit","__emit","formProps","useCleanAttrs","slots","useSlots","formRef","useForm","fieldSchemaRef","useFieldSchema","prefixCls","stylePrefix","externalForm","activeForm","useQueryFormForm","resolvedSchema","computed","innerFormProps","submitByChange","values","error","triggerSubmit","throttle","dispose","reaction","form","toJS","onUnmounted","hasDefaultSlot","schemaField","useQueryFormSchemaField","_openBlock","_createBlock","_unref","_mergeProps","_createElementVNode","_renderSlot","_ctx","_resolveDynamicComponent","COLLAPSED_ROWS","FormGridColumn","FormGrid","schemaList","rawSchema","Schema","childSchema","name","resolveField","createVisibleContext","node","grid","collapsedOverride","index","entry","schema","defaultVisibleWhen","context","shadowRow","getFieldRowCount","shadowColumn","span","endColumn","resolveVisibleWhen","isActionsNode","rows","defaultShouldVisible","restGridProps","gridOptions","createGrid","expanded","ref","gridType","updateType","realRows","autorun","toggle","_createVNode","_normalizeClass","FormButtonGroup","_normalizeStyle","Submit","_normalizeProps","_createTextVNode","_toDisplayString","Reset","ElLink","compatibleUnderlineProp","ElIcon","ArrowUp","ArrowDown","QueryForm","composeExport","QueryFormInner","QueryFormLightInner"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/query-form/query-form-light.vue","../../src/query-form/query-form.vue","../../src/query-form/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Form } from '@formily/core'\nimport type { IQueryFormLightProps } from './types'\nimport { reaction, toJS } from '@formily/reactive'\nimport { useFieldSchema, useForm } from '@silver-formily/vue'\nimport { throttle } from 'lodash-es'\nimport { computed, onUnmounted, useSlots } from 'vue'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { Form as FForm } from '../form'\nimport { useQueryFormForm, useQueryFormSchemaField } from './hooks'\n\ndefineOptions({\n name: 'FQueryFormLight',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<IQueryFormLightProps>(), {\n components: () => ({}),\n throttleWait: 300,\n})\nconst emit = defineEmits<{\n (e: 'autoSubmit', values: Form['values']): void\n (e: 'autoSubmitFailed', error: any): void\n}>()\n\nconst { props: formProps } = useCleanAttrs(['modelValue', 'onUpdate:modelValue'])\nconst slots = useSlots()\nconst formRef = useForm()\nconst fieldSchemaRef = useFieldSchema()\nconst prefixCls = `${stylePrefix}-query-form-light`\n\nconst { externalForm, activeForm } = useQueryFormForm({\n formProps,\n fallbackForm: formRef,\n})\nconst resolvedSchema = computed(() => props.schema ?? fieldSchemaRef.value)\n\nconst innerFormProps = computed(() => ({\n fullness: false,\n ...formProps.value,\n form: externalForm.value,\n}))\n\nfunction submitByChange() {\n const form = activeForm.value\n form\n .submit((values) => {\n emit('autoSubmit', values)\n return formProps.value.onAutoSubmit?.(values)\n })\n .catch((error) => {\n emit('autoSubmitFailed', error)\n formProps.value.onAutoSubmitFailed?.(error)\n })\n}\n\nconst triggerSubmit = throttle(() => {\n submitByChange()\n}, props.throttleWait, {\n leading: false,\n trailing: true,\n})\n\nconst dispose = reaction(() => {\n const form = activeForm.value\n if (!form)\n return\n return toJS(form.values)\n}, () => {\n triggerSubmit()\n})\n\nonUnmounted(() => {\n dispose()\n triggerSubmit.cancel()\n})\n\nconst { hasDefaultSlot, schemaField } = useQueryFormSchemaField({\n slots,\n schema: resolvedSchema,\n schemaField: computed(() => props.schemaField),\n components: computed(() => props.components),\n})\n</script>\n\n<template>\n <FForm v-bind=\"innerFormProps\" :class=\"prefixCls\">\n <div :class=\"`${prefixCls}__content`\">\n <slot v-if=\"hasDefaultSlot\" />\n <component\n :is=\"schemaField\"\n v-else-if=\"schemaField\"\n :schema=\"resolvedSchema\"\n />\n </div>\n </FForm>\n</template>\n","<script setup lang=\"ts\">\nimport type { ISchema } from '@formily/json-schema'\nimport type { Grid, GridNode, IGridOptions } from '@silver-formily/grid'\nimport type { IQueryFormProps, SchemaEntry } from './types'\nimport { ArrowDown, ArrowUp } from '@element-plus/icons-vue'\nimport { Schema } from '@formily/json-schema'\nimport { autorun } from '@formily/reactive'\nimport { createGrid } from '@silver-formily/grid'\nimport { useFieldSchema, useForm } from '@silver-formily/vue'\nimport { ElIcon, ElLink } from 'element-plus'\nimport { computed, onUnmounted, ref, useSlots } from 'vue'\nimport { compatibleUnderlineProp, stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { Form } from '../form'\nimport { FormButtonGroup } from '../form-button-group'\nimport { FormGrid } from '../form-grid'\nimport { Reset } from '../reset'\nimport { Submit } from '../submit'\nimport { useQueryFormForm, useQueryFormSchemaField } from './hooks'\n\ndefineOptions({\n name: 'FQueryForm',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<IQueryFormProps>(), {\n components: () => ({}),\n gridProps: () => ({}),\n defaultExpanded: false,\n showToggle: true,\n actionsAtRowEnd: false,\n submitText: '查询',\n resetText: '重置',\n expandText: '展开',\n collapseText: '收起',\n showSubmit: true,\n showReset: true,\n})\n\nconst { props: formProps } = useCleanAttrs(['modelValue', 'onUpdate:modelValue'])\nconst slots = useSlots()\nconst prefixCls = `${stylePrefix}-query-form`\nconst FormGridColumn = FormGrid.GridColumn\n\nconst COLLAPSED_ROWS = 1\nconst fieldSchemaRef = useFieldSchema()\nconst formRef = useForm()\nconst { externalForm, activeForm } = useQueryFormForm({\n formProps,\n fallbackForm: formRef,\n})\nconst innerFormProps = computed(() => ({\n fullness: true,\n ...formProps.value,\n form: externalForm.value,\n}))\n\nconst schemaList = computed<SchemaEntry[]>(() => {\n const rawSchema = props.schema ?? fieldSchemaRef.value\n /* istanbul ignore next -- @preserve defensive: schema can be temporarily absent in external field-schema lifecycle */\n if (!rawSchema)\n return []\n const schema = rawSchema instanceof Schema ? rawSchema : new Schema(rawSchema)\n return schema.mapProperties((childSchema: ISchema, name: string | number) => ({\n name,\n schema: childSchema,\n }))\n})\n\nfunction resolveField(name?: string | number) {\n return activeForm.value?.query(name).take()\n}\n\nfunction createVisibleContext(\n node: GridNode,\n grid: Grid<HTMLElement>,\n collapsedOverride?: boolean,\n) {\n const index = node.index ?? 0\n const entry = schemaList.value[index]\n const schema = entry?.schema\n const name = entry?.name ?? schema?.name\n return {\n field: resolveField(name),\n schema,\n index,\n node,\n grid,\n collapsed: collapsedOverride ?? grid.maxRows !== Infinity,\n breakpoint: grid.breakpoint,\n }\n}\n\nfunction defaultVisibleWhen(context: ReturnType<typeof createVisibleContext>) {\n if (!context.collapsed)\n return true\n\n const shadowRow = context.node.shadowRow ?? 0\n const withinRows = shadowRow < COLLAPSED_ROWS + 1\n if (!withinRows)\n return false\n\n const isCollapsible = getFieldRowCount(context.grid) > COLLAPSED_ROWS\n if (!isCollapsible)\n return true\n const shadowColumn = context.node.shadowColumn ?? 1\n const span = context.node.span ?? 1\n const endColumn = shadowColumn + span - 1\n if (shadowRow === COLLAPSED_ROWS && endColumn === context.grid.columns)\n return false\n\n return true\n}\n\nfunction resolveVisibleWhen(context: ReturnType<typeof createVisibleContext>) {\n const visible = props.visibleWhen\n ? props.visibleWhen(context)\n : defaultVisibleWhen(context)\n return visible !== false\n}\n\nfunction isActionsNode(node: GridNode, grid: Grid<HTMLElement>) {\n if ('element' in node && node.element) {\n return node.element.dataset.queryFormActions !== undefined\n }\n return node.index === grid.childSize - 1\n}\n\nfunction getFieldRowCount(grid: Grid<HTMLElement>) {\n const rows = (grid.children ?? [])\n .filter(node => !isActionsNode(node, grid))\n .map(node => node.shadowRow ?? 0)\n return new Set(rows).size\n}\n\nconst defaultShouldVisible: IGridOptions['shouldVisible'] = (node, grid) => {\n if (isActionsNode(node, grid))\n return true\n return resolveVisibleWhen(createVisibleContext(node, grid))\n}\n\nconst restGridProps = props.gridProps ?? {}\nconst defaultGridProps: Partial<IGridOptions> = restGridProps.minColumns === undefined && restGridProps.maxColumns === undefined\n ? { maxColumns: 4 }\n : {}\n\nconst gridOptions: IGridOptions = {\n ...defaultGridProps,\n ...restGridProps,\n maxRows: (props.defaultExpanded || !props.showToggle) ? Infinity : COLLAPSED_ROWS,\n shouldVisible: defaultShouldVisible,\n}\n\nconst grid = createGrid(gridOptions)\n\nconst expanded = ref(grid.maxRows === Infinity)\nconst gridType = ref<'incomplete-wrap' | 'collapsible' | 'complete-wrap'>('complete-wrap')\n\nfunction updateType() {\n if (!props.showToggle) {\n gridType.value = 'incomplete-wrap'\n return\n }\n\n if (!props.visibleWhen) {\n gridType.value = getFieldRowCount(grid) > COLLAPSED_ROWS\n ? 'collapsible'\n : 'incomplete-wrap'\n return\n }\n\n const nodes = grid.children ?? []\n const hasHiddenInCollapsed = nodes.some((node) => {\n if (isActionsNode(node, grid))\n return false\n return !resolveVisibleWhen(createVisibleContext(node, grid, true))\n })\n /* istanbul ignore next -- @preserve layout branch depends on runtime grid measurement in browser */\n if (hasHiddenInCollapsed) {\n gridType.value = 'collapsible'\n return\n }\n const realRows = grid.shadowRows\n gridType.value = realRows < COLLAPSED_ROWS + 1 ? 'incomplete-wrap' : 'complete-wrap'\n}\n\nconst dispose = autorun(() => {\n expanded.value = grid.maxRows === Infinity\n updateType()\n})\n\nonUnmounted(dispose)\n\nfunction toggle() {\n if (!props.showToggle)\n return\n grid.maxRows = grid.maxRows === Infinity ? COLLAPSED_ROWS : Infinity\n}\n\nconst { hasDefaultSlot, schemaField } = useQueryFormSchemaField({\n slots,\n schema: computed(() => props.schema),\n schemaField: computed(() => props.schemaField),\n components: computed(() => props.components),\n scope: computed(() => props.scope),\n})\n</script>\n\n<template>\n <Form v-bind=\"innerFormProps\" :class=\"prefixCls\">\n <FormGrid :grid=\"grid\">\n <slot v-if=\"hasDefaultSlot\" />\n <component\n :is=\"schemaField\"\n v-else-if=\"schemaField\"\n :schema=\"props.schema\"\n />\n <FormGridColumn\n :grid-span=\"-1\"\n data-query-form-actions\n :class=\"[\n `${prefixCls}__actions`,\n props.actionsAtRowEnd && `${prefixCls}__actions--row-end`,\n ]\"\n >\n <template v-if=\"gridType === 'incomplete-wrap'\">\n <FormButtonGroup\n :align=\"props.actionsAtRowEnd ? 'right' : 'left'\"\n align-form-item\n inline\n :style=\"props.actionsAtRowEnd && { width: '100%' }\"\n >\n <slot\n name=\"actions\"\n :expanded=\"expanded\"\n :toggle=\"toggle\"\n :type=\"gridType\"\n >\n <Submit v-if=\"props.showSubmit\" v-bind=\"props.submitProps\">\n {{ props.submitText }}\n </Submit>\n <Reset v-if=\"props.showReset\" v-bind=\"props.resetProps\">\n {{ props.resetText }}\n </Reset>\n </slot>\n </FormButtonGroup>\n </template>\n <template v-else-if=\"gridType === 'collapsible' && props.showToggle\">\n <FormButtonGroup\n :align=\"props.actionsAtRowEnd ? 'right' : 'left'\"\n align-form-item\n inline\n :style=\"props.actionsAtRowEnd && { width: '100%' }\"\n >\n <slot\n name=\"actions\"\n :expanded=\"expanded\"\n :toggle=\"toggle\"\n :type=\"gridType\"\n >\n <Submit v-if=\"props.showSubmit\" v-bind=\"props.submitProps\">\n {{ props.submitText }}\n </Submit>\n <Reset v-if=\"props.showReset\" v-bind=\"props.resetProps\">\n {{ props.resetText }}\n </Reset>\n </slot>\n <slot\n name=\"collapse\"\n :expanded=\"expanded\"\n :toggle=\"toggle\"\n :type=\"gridType\"\n >\n <ElLink\n type=\"primary\"\n :underline=\"compatibleUnderlineProp()\"\n :class=\"`${prefixCls}__collapse-link`\"\n @click=\"toggle\"\n >\n {{ expanded ? props.collapseText : props.expandText }}\n <ElIcon :class=\"`${prefixCls}__collapse-icon`\">\n <ArrowUp v-if=\"expanded\" />\n <ArrowDown v-else />\n </ElIcon>\n </ElLink>\n </slot>\n </FormButtonGroup>\n </template>\n <template v-else>\n <FormButtonGroup\n align=\"right\"\n inline\n style=\"display: flex; width: 100%;\"\n >\n <slot\n name=\"actions\"\n :expanded=\"expanded\"\n :toggle=\"toggle\"\n :type=\"gridType\"\n >\n <Submit v-if=\"props.showSubmit\" v-bind=\"props.submitProps\">\n {{ props.submitText }}\n </Submit>\n <Reset v-if=\"props.showReset\" v-bind=\"props.resetProps\">\n {{ props.resetText }}\n </Reset>\n </slot>\n </FormButtonGroup>\n </template>\n </FormGridColumn>\n </FormGrid>\n </Form>\n</template>\n","import { composeExport } from '../__builtins__/shared'\nimport QueryFormLightInner from './query-form-light.vue'\nimport QueryFormInner from './query-form.vue'\nimport './style.scss'\n\nexport type { IQueryFormLightProps, IQueryFormProps, QueryFormVisible, QueryFormVisibleContext } from './types'\n\nexport const QueryForm = composeExport(QueryFormInner, {\n Light: QueryFormLightInner,\n})\n\nexport default QueryForm\n"],"names":["props","__props","emit","__emit","formProps","useCleanAttrs","slots","useSlots","formRef","useForm","fieldSchemaRef","useFieldSchema","prefixCls","stylePrefix","externalForm","activeForm","useQueryFormForm","resolvedSchema","computed","innerFormProps","submitByChange","values","error","triggerSubmit","throttle","dispose","reaction","form","toJS","onUnmounted","hasDefaultSlot","schemaField","useQueryFormSchemaField","_openBlock","_createBlock","_unref","_mergeProps","_createElementVNode","_renderSlot","_ctx","_resolveDynamicComponent","COLLAPSED_ROWS","FormGridColumn","FormGrid","schemaList","rawSchema","Schema","childSchema","name","resolveField","createVisibleContext","node","grid","collapsedOverride","index","entry","schema","defaultVisibleWhen","context","shadowRow","getFieldRowCount","shadowColumn","span","endColumn","resolveVisibleWhen","isActionsNode","rows","defaultShouldVisible","restGridProps","gridOptions","createGrid","expanded","ref","gridType","updateType","realRows","autorun","toggle","_createVNode","_normalizeClass","FormButtonGroup","_normalizeStyle","Submit","_normalizeProps","_createTextVNode","_toDisplayString","Reset","ElLink","compatibleUnderlineProp","ElIcon","ArrowUp","ArrowDown","QueryForm","composeExport","QueryFormInner","QueryFormLightInner"],"mappings":"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"}
@@ -1,14 +1,17 @@
1
1
  import { useField as j, connect as w, mapProps as D } from "@silver-formily/vue";
2
2
  import { FormBaseItem as V, fieldFeedbackMapper as N } from "../form-item/index.mjs";
3
- import { defineComponent as E, computed as y, ref as c, onMounted as U, watch as L, openBlock as P, createBlock as S, unref as u, mergeProps as C, withCtx as G, createElementVNode as h, normalizeClass as b, resolveDynamicComponent as H, normalizeProps as J, guardReactiveProps as K, renderSlot as T, createCommentVNode as W } from "vue";
3
+ import { defineComponent as E, computed as y, ref as p, onMounted as U, watch as L, openBlock as P, createBlock as S, unref as u, mergeProps as C, withCtx as G, createElementVNode as h, normalizeClass as b, resolveDynamicComponent as H, normalizeProps as J, guardReactiveProps as K, renderSlot as T, createCommentVNode as W } from "vue";
4
4
  import { createForm as X } from "@formily/core";
5
5
  import { isNum as Y } from "@formily/shared";
6
6
  import { ElPagination as Z } from "element-plus";
7
- import { QueryForm as R } from "../query-form/index.mjs";
8
- import { useQueryFormForm as ee } from "../query-form/hooks.mjs";
9
- import { useCleanAttrs as te } from "../__builtins__/shared/utils.mjs";
10
- import { stylePrefix as k } from "../__builtins__/configs/index.mjs";
11
- import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
7
+ import { stylePrefix as R } from "../__builtins__/configs/index.mjs";
8
+ import "@formily/reactive";
9
+ import "@vueuse/core";
10
+ import "@silver-formily/reactive-vue";
11
+ import { useCleanAttrs as ee } from "../__builtins__/shared/utils.mjs";
12
+ import { QueryForm as k } from "../query-form/index.mjs";
13
+ import { useQueryFormForm as te } from "../query-form/hooks.mjs";
14
+ import '../styles/query-form-item/index.css';const re = /* @__PURE__ */ E({
12
15
  name: "FQueryFormItem",
13
16
  inheritAttrs: !1,
14
17
  __name: "query-form-item",
@@ -46,7 +49,7 @@ import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
46
49
  },
47
50
  emits: ["requestSuccess", "requestFailed"],
48
51
  setup(B, { emit: I }) {
49
- const e = B, p = I, m = {
52
+ const e = B, c = I, m = {
50
53
  currentPage: 1,
51
54
  pageSize: 10,
52
55
  pageSizes: [10, 20, 50, 100],
@@ -55,17 +58,17 @@ import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
55
58
  }, q = {
56
59
  current: "current",
57
60
  pageSize: "pageSize"
58
- }, Q = j(), _ = X(), f = `${k}-query-form-item`, x = `${k}-form-item--isolated`, { props: O } = te(), M = y(() => {
61
+ }, Q = j(), _ = X(), f = `${R}-query-form-item`, x = `${R}-form-item--isolated`, { props: O } = ee(), M = y(() => {
59
62
  const {
60
63
  currentPage: t,
61
- pageSize: r,
62
- ...a
64
+ pageSize: a,
65
+ ...r
63
66
  } = {
64
67
  ...m,
65
68
  ...e.paginationProps
66
69
  };
67
- return a;
68
- }), n = c(e.paginationProps?.currentPage ?? m.currentPage), s = c(e.paginationProps?.pageSize ?? m.pageSize), d = c(0), l = c(0), { activeForm: F } = ee({
70
+ return r;
71
+ }), n = p(e.paginationProps?.currentPage ?? m.currentPage), s = p(e.paginationProps?.pageSize ?? m.pageSize), d = p(0), l = p(0), { activeForm: F } = te({
69
72
  formProps: y(() => e.queryFormProps),
70
73
  fallbackForm: _
71
74
  }), $ = y(() => ({
@@ -82,36 +85,36 @@ import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
82
85
  return;
83
86
  const t = Q.value;
84
87
  Array.isArray(t.dataSource) || (t.dataSource = []);
85
- const r = ++l.value, a = F.value?.values ?? {}, i = e.pagination ? {
88
+ const a = ++l.value, r = F.value?.values ?? {}, i = e.pagination ? {
86
89
  current: n.value,
87
90
  pageSize: s.value
88
91
  } : void 0, v = i ? {
89
- ...a,
92
+ ...r,
90
93
  [e.paginationMap.current ?? q.current]: i.current,
91
94
  [e.paginationMap.pageSize ?? q.pageSize]: i.pageSize
92
- } : a;
95
+ } : r;
93
96
  t.loading = !0;
94
97
  try {
95
98
  const o = await e.request(v);
96
- if (r !== l.value)
99
+ if (a !== l.value)
97
100
  return;
98
101
  if (o.success !== !0) {
99
- p("requestFailed", o);
102
+ c("requestFailed", o);
100
103
  return;
101
104
  }
102
- t.dataSource = o.data, e.clearOnDataChange && t.setValue?.(void 0), d.value = Y(o.total) ? o.total : o.data.length, p("requestSuccess", {
103
- values: a,
105
+ t.dataSource = o.data, e.clearOnDataChange && t.setValue?.(void 0), d.value = Y(o.total) ? o.total : o.data.length, c("requestSuccess", {
106
+ values: r,
104
107
  pagination: i,
105
108
  dataSource: o.data,
106
109
  total: d.value,
107
110
  result: o
108
111
  });
109
112
  } catch (o) {
110
- if (r !== l.value)
113
+ if (a !== l.value)
111
114
  return;
112
- p("requestFailed", o);
115
+ c("requestFailed", o);
113
116
  } finally {
114
- r === l.value && (t.loading = !1);
117
+ a === l.value && (t.loading = !1);
115
118
  }
116
119
  }
117
120
  async function z() {
@@ -122,15 +125,15 @@ import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
122
125
  await g();
123
126
  }
124
127
  function A(t) {
125
- const r = e.queryFormProps.resetProps?.onClick, a = r?.(t);
126
- return a === !1 ? !1 : (z(), a);
128
+ const a = e.queryFormProps.resetProps?.onClick, r = a?.(t);
129
+ return r === !1 ? !1 : (z(), r);
127
130
  }
128
131
  return U(() => {
129
132
  e.immediate && g();
130
- }), L([n, s], ([t, r], [a, i]) => {
133
+ }), L([n, s], ([t, a], [r, i]) => {
131
134
  if (!e.pagination)
132
135
  return;
133
- const v = t !== a, o = r !== i;
136
+ const v = t !== r, o = a !== i;
134
137
  if (!(!v && !o)) {
135
138
  if (o && t !== 1) {
136
139
  n.value = 1;
@@ -138,12 +141,12 @@ import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
138
141
  }
139
142
  g();
140
143
  }
141
- }), (t, r) => (P(), S(u(V), C(u(O), { "internal-form-item-class": x }), {
144
+ }), (t, a) => (P(), S(u(V), C(u(O), { "internal-form-item-class": x }), {
142
145
  default: G(() => [
143
146
  h("div", {
144
147
  class: b(f)
145
148
  }, [
146
- (P(), S(H(e.mode === "light" ? u(R).Light : u(R)), J(K($.value)), null, 16)),
149
+ (P(), S(H(e.mode === "light" ? u(k).Light : u(k)), J(K($.value)), null, 16)),
147
150
  h("div", {
148
151
  class: b(`${f}__content`)
149
152
  }, [
@@ -152,9 +155,9 @@ import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
152
155
  e.pagination ? (P(), S(u(Z), C({
153
156
  key: 0,
154
157
  "current-page": n.value,
155
- "onUpdate:currentPage": r[0] || (r[0] = (a) => n.value = a),
158
+ "onUpdate:currentPage": a[0] || (a[0] = (r) => n.value = r),
156
159
  "page-size": s.value,
157
- "onUpdate:pageSize": r[1] || (r[1] = (a) => s.value = a),
160
+ "onUpdate:pageSize": a[1] || (a[1] = (r) => s.value = r),
158
161
  class: `${f}__pagination`
159
162
  }, M.value, { total: d.value }), null, 16, ["current-page", "page-size", "class", "total"])) : W("", !0)
160
163
  ])
@@ -162,8 +165,8 @@ import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
162
165
  _: 3
163
166
  }, 16));
164
167
  }
165
- }), fe = w(
166
- ae,
168
+ }), ve = w(
169
+ re,
167
170
  D(
168
171
  {
169
172
  validateStatus: !0,
@@ -175,7 +178,7 @@ import '../styles/query-form-item/index.css';const ae = /* @__PURE__ */ E({
175
178
  )
176
179
  );
177
180
  export {
178
- fe as QueryFormItem,
179
- fe as default
181
+ ve as QueryFormItem,
182
+ ve as default
180
183
  };
181
184
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/query-form-item/query-form-item.vue","../../src/query-form-item/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { Field } from '@formily/core'\r\nimport type { ISchema } from '@formily/json-schema'\r\nimport type { PropType } from 'vue'\r\nimport type {\r\n QueryFormItemMode,\r\n QueryFormItemPaginationMap,\r\n QueryFormItemPaginationProps,\r\n QueryFormItemQueryProps,\r\n QueryFormItemRequest,\r\n QueryFormItemRequestSuccessPayload,\r\n} from './types'\r\nimport { createForm } from '@formily/core'\r\nimport { isNum } from '@formily/shared'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { ElPagination } from 'element-plus'\r\nimport { computed, onMounted, ref, watch } from 'vue'\r\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\r\nimport { FormBaseItem } from '../form-item'\r\nimport { QueryForm } from '../query-form'\r\nimport { useQueryFormForm } from '../query-form/hooks'\r\n\r\ndefineOptions({\r\n name: 'FQueryFormItem',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps({\r\n mode: {\r\n type: String as PropType<QueryFormItemMode>,\r\n default: 'default',\r\n },\r\n request: Function as PropType<QueryFormItemRequest>,\r\n clearOnDataChange: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n querySchema: Object as PropType<ISchema>,\r\n queryFormProps: {\r\n type: Object as PropType<QueryFormItemQueryProps>,\r\n default: () => ({}),\r\n },\r\n pagination: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n paginationProps: {\r\n type: Object as PropType<QueryFormItemPaginationProps>,\r\n default: () => ({}),\r\n },\r\n paginationMap: {\r\n type: Object as PropType<QueryFormItemPaginationMap>,\r\n default: () => ({}),\r\n },\r\n immediate: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n})\r\n\r\nconst emit = defineEmits<{\r\n (e: 'requestSuccess', payload: QueryFormItemRequestSuccessPayload): void\r\n (e: 'requestFailed', error: any): void\r\n}>()\r\n\r\nconst defaultPaginationProps: QueryFormItemPaginationProps = {\r\n currentPage: 1,\r\n pageSize: 10,\r\n pageSizes: [10, 20, 50, 100],\r\n layout: 'total, prev, pager, next',\r\n size: 'small',\r\n}\r\nconst defaultPaginationRequestMapping: Required<QueryFormItemPaginationMap> = {\r\n current: 'current',\r\n pageSize: 'pageSize',\r\n}\r\n\r\nconst fieldRef = useField<Field>()\r\nconst internalQueryForm = createForm()\r\nconst prefixCls = `${stylePrefix}-query-form-item`\r\nconst formItemInternalClass = `${stylePrefix}-form-item--isolated`\r\nconst { props: formItemProps } = useCleanAttrs()\r\n\r\nconst paginationBindings = computed(() => {\r\n const {\r\n currentPage,\r\n pageSize,\r\n ...bindings\r\n } = {\r\n ...defaultPaginationProps,\r\n ...props.paginationProps,\r\n }\r\n return bindings\r\n})\r\n\r\nconst currentPageRef = ref(props.paginationProps?.currentPage ?? defaultPaginationProps.currentPage)\r\nconst pageSizeRef = ref(props.paginationProps?.pageSize ?? defaultPaginationProps.pageSize)\r\nconst totalRef = ref(0)\r\nconst currentRequestId = ref(0)\r\n\r\nconst { activeForm: activeQueryForm } = useQueryFormForm({\r\n formProps: computed(() => props.queryFormProps),\r\n fallbackForm: internalQueryForm,\r\n})\r\n\r\nconst queryFormBindings = computed(() => {\r\n return ({\r\n ...props.queryFormProps,\r\n schema: props.querySchema ?? props.queryFormProps.schema,\r\n form: activeQueryForm.value,\r\n onAutoSubmit: handleQuerySubmit,\r\n resetProps: {\r\n onClick: handleQueryReset,\r\n },\r\n })\r\n})\r\n\r\nasync function executeRequest() {\r\n if (!props.request)\r\n return\r\n\r\n const field = fieldRef.value\r\n if (!Array.isArray(field.dataSource))\r\n field.dataSource = []\r\n\r\n const requestId = ++currentRequestId.value\r\n /* istanbul ignore next -- @preserve defensive: active query form can be temporarily undefined before form injection settles */\r\n const queryValues = activeQueryForm.value?.values ?? {}\r\n const paginationData = props.pagination\r\n ? {\r\n current: currentPageRef.value,\r\n pageSize: pageSizeRef.value,\r\n }\r\n : undefined\r\n const requestParams = paginationData\r\n ? {\r\n ...queryValues,\r\n [(props.paginationMap.current ?? defaultPaginationRequestMapping.current)]: paginationData.current,\r\n [(props.paginationMap.pageSize ?? defaultPaginationRequestMapping.pageSize)]: paginationData.pageSize,\r\n }\r\n : queryValues\r\n\r\n field.loading = true\r\n try {\r\n const result = await props.request(requestParams)\r\n\r\n if (requestId !== currentRequestId.value)\r\n return\r\n\r\n if (result.success !== true) {\r\n emit('requestFailed', result)\r\n return\r\n }\r\n\r\n field.dataSource = result.data\r\n if (props.clearOnDataChange) {\r\n field.setValue?.(undefined)\r\n }\r\n totalRef.value = isNum(result.total) ? result.total : result.data.length\r\n\r\n emit('requestSuccess', {\r\n values: queryValues,\r\n pagination: paginationData,\r\n dataSource: result.data,\r\n total: totalRef.value,\r\n result,\r\n })\r\n }\r\n catch (error) {\r\n if (requestId !== currentRequestId.value)\r\n return\r\n emit('requestFailed', error)\r\n }\r\n finally {\r\n if (requestId === currentRequestId.value)\r\n field.loading = false\r\n }\r\n}\r\n\r\nasync function handleQuerySubmit() {\r\n if (props.pagination && currentPageRef.value !== 1) {\r\n currentPageRef.value = 1\r\n return\r\n }\r\n\r\n await executeRequest()\r\n}\r\n\r\nfunction handleQueryReset(event: MouseEvent) {\r\n const userOnClick = props.queryFormProps.resetProps?.onClick as ((event: MouseEvent) => void | boolean) | undefined\r\n const result = userOnClick?.(event)\r\n if (result === false)\r\n return false\r\n\r\n void handleQuerySubmit()\r\n\r\n return result\r\n}\r\n\r\nonMounted(() => {\r\n if (props.immediate)\r\n void executeRequest()\r\n})\r\n\r\nwatch([currentPageRef, pageSizeRef], ([currentPage, pageSize], [previousPage, previousPageSize]) => {\r\n /* istanbul ignore if -- @preserve defensive: watcher is retained when pagination is dynamically toggled off */\r\n if (!props.pagination)\r\n return\r\n\r\n const currentChanged = currentPage !== previousPage\r\n const pageSizeChanged = pageSize !== previousPageSize\r\n\r\n /* istanbul ignore if -- @preserve defensive: keep guard for unexpected duplicated watcher payload */\r\n if (!currentChanged && !pageSizeChanged)\r\n return\r\n\r\n if (pageSizeChanged && currentPage !== 1) {\r\n currentPageRef.value = 1\r\n return\r\n }\r\n\r\n void executeRequest()\r\n})\r\n</script>\r\n\r\n<template>\r\n <FormBaseItem\r\n v-bind=\"formItemProps\"\r\n :internal-form-item-class=\"formItemInternalClass\"\r\n >\r\n <div :class=\"prefixCls\">\r\n <component\r\n :is=\"props.mode === 'light' ? QueryForm.Light : QueryForm\"\r\n v-bind=\"queryFormBindings\"\r\n />\r\n <div :class=\"`${prefixCls}__content`\">\r\n <slot />\r\n </div>\r\n <ElPagination\r\n v-if=\"props.pagination\"\r\n v-model:current-page=\"currentPageRef\"\r\n v-model:page-size=\"pageSizeRef\"\r\n :class=\"`${prefixCls}__pagination`\"\r\n v-bind=\"paginationBindings\"\r\n :total=\"totalRef\"\r\n />\r\n </div>\r\n </FormBaseItem>\r\n</template>\r\n","import { connect, mapProps } from '@silver-formily/vue'\r\nimport { fieldFeedbackMapper } from '../form-item'\r\nimport QueryFormItemInner from './query-form-item.vue'\r\nimport './style.scss'\r\n\r\nexport type {\r\n IQueryFormItemProps,\r\n QueryFormItemMode,\r\n QueryFormItemPagination,\r\n QueryFormItemPaginationMap,\r\n QueryFormItemPaginationProps,\r\n QueryFormItemQueryProps,\r\n QueryFormItemRequest,\r\n QueryFormItemRequestResultObject,\r\n QueryFormItemRequestSuccessPayload,\r\n} from './types'\r\n\r\nexport const QueryFormItem = connect<typeof QueryFormItemInner>(\r\n QueryFormItemInner,\r\n mapProps(\r\n {\r\n validateStatus: true,\r\n title: 'label',\r\n required: true,\r\n description: 'extra',\r\n },\r\n fieldFeedbackMapper,\r\n ),\r\n)\r\n\r\nexport default QueryFormItem\r\n"],"names":["props","__props","emit","__emit","defaultPaginationProps","defaultPaginationRequestMapping","fieldRef","useField","internalQueryForm","createForm","prefixCls","stylePrefix","formItemInternalClass","formItemProps","useCleanAttrs","paginationBindings","computed","currentPage","pageSize","bindings","currentPageRef","ref","pageSizeRef","totalRef","currentRequestId","activeQueryForm","useQueryFormForm","queryFormBindings","handleQuerySubmit","handleQueryReset","executeRequest","field","requestId","queryValues","paginationData","requestParams","result","isNum","error","event","userOnClick","onMounted","watch","previousPage","previousPageSize","currentChanged","pageSizeChanged","_openBlock","_createBlock","_unref","_mergeProps","_createElementVNode","_resolveDynamicComponent","QueryForm","_normalizeProps","_guardReactiveProps","_renderSlot","_ctx","$event","QueryFormItem","connect","QueryFormItemInner","mapProps","fieldFeedbackMapper"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/query-form-item/query-form-item.vue","../../src/query-form-item/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Field } from '@formily/core'\nimport type { ISchema } from '@formily/json-schema'\nimport type { PropType } from 'vue'\nimport type {\n QueryFormItemMode,\n QueryFormItemPaginationMap,\n QueryFormItemPaginationProps,\n QueryFormItemQueryProps,\n QueryFormItemRequest,\n QueryFormItemRequestSuccessPayload,\n} from './types'\nimport { createForm } from '@formily/core'\nimport { isNum } from '@formily/shared'\nimport { useField } from '@silver-formily/vue'\nimport { ElPagination } from 'element-plus'\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { FormBaseItem } from '../form-item'\nimport { QueryForm } from '../query-form'\nimport { useQueryFormForm } from '../query-form/hooks'\n\ndefineOptions({\n name: 'FQueryFormItem',\n inheritAttrs: false,\n})\n\nconst props = defineProps({\n mode: {\n type: String as PropType<QueryFormItemMode>,\n default: 'default',\n },\n request: Function as PropType<QueryFormItemRequest>,\n clearOnDataChange: {\n type: Boolean,\n default: false,\n },\n querySchema: Object as PropType<ISchema>,\n queryFormProps: {\n type: Object as PropType<QueryFormItemQueryProps>,\n default: () => ({}),\n },\n pagination: {\n type: Boolean,\n default: true,\n },\n paginationProps: {\n type: Object as PropType<QueryFormItemPaginationProps>,\n default: () => ({}),\n },\n paginationMap: {\n type: Object as PropType<QueryFormItemPaginationMap>,\n default: () => ({}),\n },\n immediate: {\n type: Boolean,\n default: true,\n },\n})\n\nconst emit = defineEmits<{\n (e: 'requestSuccess', payload: QueryFormItemRequestSuccessPayload): void\n (e: 'requestFailed', error: any): void\n}>()\n\nconst defaultPaginationProps: QueryFormItemPaginationProps = {\n currentPage: 1,\n pageSize: 10,\n pageSizes: [10, 20, 50, 100],\n layout: 'total, prev, pager, next',\n size: 'small',\n}\nconst defaultPaginationRequestMapping: Required<QueryFormItemPaginationMap> = {\n current: 'current',\n pageSize: 'pageSize',\n}\n\nconst fieldRef = useField<Field>()\nconst internalQueryForm = createForm()\nconst prefixCls = `${stylePrefix}-query-form-item`\nconst formItemInternalClass = `${stylePrefix}-form-item--isolated`\nconst { props: formItemProps } = useCleanAttrs()\n\nconst paginationBindings = computed(() => {\n const {\n currentPage,\n pageSize,\n ...bindings\n } = {\n ...defaultPaginationProps,\n ...props.paginationProps,\n }\n return bindings\n})\n\nconst currentPageRef = ref(props.paginationProps?.currentPage ?? defaultPaginationProps.currentPage)\nconst pageSizeRef = ref(props.paginationProps?.pageSize ?? defaultPaginationProps.pageSize)\nconst totalRef = ref(0)\nconst currentRequestId = ref(0)\n\nconst { activeForm: activeQueryForm } = useQueryFormForm({\n formProps: computed(() => props.queryFormProps),\n fallbackForm: internalQueryForm,\n})\n\nconst queryFormBindings = computed(() => {\n return ({\n ...props.queryFormProps,\n schema: props.querySchema ?? props.queryFormProps.schema,\n form: activeQueryForm.value,\n onAutoSubmit: handleQuerySubmit,\n resetProps: {\n onClick: handleQueryReset,\n },\n })\n})\n\nasync function executeRequest() {\n if (!props.request)\n return\n\n const field = fieldRef.value\n if (!Array.isArray(field.dataSource))\n field.dataSource = []\n\n const requestId = ++currentRequestId.value\n /* istanbul ignore next -- @preserve defensive: active query form can be temporarily undefined before form injection settles */\n const queryValues = activeQueryForm.value?.values ?? {}\n const paginationData = props.pagination\n ? {\n current: currentPageRef.value,\n pageSize: pageSizeRef.value,\n }\n : undefined\n const requestParams = paginationData\n ? {\n ...queryValues,\n [(props.paginationMap.current ?? defaultPaginationRequestMapping.current)]: paginationData.current,\n [(props.paginationMap.pageSize ?? defaultPaginationRequestMapping.pageSize)]: paginationData.pageSize,\n }\n : queryValues\n\n field.loading = true\n try {\n const result = await props.request(requestParams)\n\n if (requestId !== currentRequestId.value)\n return\n\n if (result.success !== true) {\n emit('requestFailed', result)\n return\n }\n\n field.dataSource = result.data\n if (props.clearOnDataChange) {\n field.setValue?.(undefined)\n }\n totalRef.value = isNum(result.total) ? result.total : result.data.length\n\n emit('requestSuccess', {\n values: queryValues,\n pagination: paginationData,\n dataSource: result.data,\n total: totalRef.value,\n result,\n })\n }\n catch (error) {\n if (requestId !== currentRequestId.value)\n return\n emit('requestFailed', error)\n }\n finally {\n if (requestId === currentRequestId.value)\n field.loading = false\n }\n}\n\nasync function handleQuerySubmit() {\n if (props.pagination && currentPageRef.value !== 1) {\n currentPageRef.value = 1\n return\n }\n\n await executeRequest()\n}\n\nfunction handleQueryReset(event: MouseEvent) {\n const userOnClick = props.queryFormProps.resetProps?.onClick as ((event: MouseEvent) => void | boolean) | undefined\n const result = userOnClick?.(event)\n if (result === false)\n return false\n\n void handleQuerySubmit()\n\n return result\n}\n\nonMounted(() => {\n if (props.immediate)\n void executeRequest()\n})\n\nwatch([currentPageRef, pageSizeRef], ([currentPage, pageSize], [previousPage, previousPageSize]) => {\n /* istanbul ignore if -- @preserve defensive: watcher is retained when pagination is dynamically toggled off */\n if (!props.pagination)\n return\n\n const currentChanged = currentPage !== previousPage\n const pageSizeChanged = pageSize !== previousPageSize\n\n /* istanbul ignore if -- @preserve defensive: keep guard for unexpected duplicated watcher payload */\n if (!currentChanged && !pageSizeChanged)\n return\n\n if (pageSizeChanged && currentPage !== 1) {\n currentPageRef.value = 1\n return\n }\n\n void executeRequest()\n})\n</script>\n\n<template>\n <FormBaseItem\n v-bind=\"formItemProps\"\n :internal-form-item-class=\"formItemInternalClass\"\n >\n <div :class=\"prefixCls\">\n <component\n :is=\"props.mode === 'light' ? QueryForm.Light : QueryForm\"\n v-bind=\"queryFormBindings\"\n />\n <div :class=\"`${prefixCls}__content`\">\n <slot />\n </div>\n <ElPagination\n v-if=\"props.pagination\"\n v-model:current-page=\"currentPageRef\"\n v-model:page-size=\"pageSizeRef\"\n :class=\"`${prefixCls}__pagination`\"\n v-bind=\"paginationBindings\"\n :total=\"totalRef\"\n />\n </div>\n </FormBaseItem>\n</template>\n","import { connect, mapProps } from '@silver-formily/vue'\nimport { fieldFeedbackMapper } from '../form-item'\nimport QueryFormItemInner from './query-form-item.vue'\nimport './style.scss'\n\nexport type {\n IQueryFormItemProps,\n QueryFormItemMode,\n QueryFormItemPagination,\n QueryFormItemPaginationMap,\n QueryFormItemPaginationProps,\n QueryFormItemQueryProps,\n QueryFormItemRequest,\n QueryFormItemRequestResultObject,\n QueryFormItemRequestSuccessPayload,\n} from './types'\n\nexport const QueryFormItem = connect<typeof QueryFormItemInner>(\n QueryFormItemInner,\n mapProps(\n {\n validateStatus: true,\n title: 'label',\n required: true,\n description: 'extra',\n },\n fieldFeedbackMapper,\n ),\n)\n\nexport default QueryFormItem\n"],"names":["props","__props","emit","__emit","defaultPaginationProps","defaultPaginationRequestMapping","fieldRef","useField","internalQueryForm","createForm","prefixCls","stylePrefix","formItemInternalClass","formItemProps","useCleanAttrs","paginationBindings","computed","currentPage","pageSize","bindings","currentPageRef","ref","pageSizeRef","totalRef","currentRequestId","activeQueryForm","useQueryFormForm","queryFormBindings","handleQuerySubmit","handleQueryReset","executeRequest","field","requestId","queryValues","paginationData","requestParams","result","isNum","error","event","userOnClick","onMounted","watch","previousPage","previousPageSize","currentChanged","pageSizeChanged","_openBlock","_createBlock","_unref","_mergeProps","_createElementVNode","_resolveDynamicComponent","QueryForm","_normalizeProps","_guardReactiveProps","_renderSlot","_ctx","$event","QueryFormItem","connect","QueryFormItemInner","mapProps","fieldFeedbackMapper"],"mappings":"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"}
@@ -1,12 +1,16 @@
1
1
  import { connect as E, mapProps as T } from "@silver-formily/vue";
2
2
  import { ElRadioButton as B, ElRadio as v, ElRadioGroup as C, version as G } from "element-plus";
3
- import { PreviewText as O } from "../preview-text/index.mjs";
4
- import { defineComponent as x, computed as c, useSlots as A, openBlock as t, createBlock as p, unref as u, normalizeProps as L, guardReactiveProps as h, withCtx as s, createElementBlock as f, Fragment as d, renderList as _, resolveDynamicComponent as y, mergeProps as b, createTextVNode as j, toDisplayString as w, renderSlot as D } from "vue";
5
- import { isPlainObj as F } from "@formily/shared";
6
- import { useCleanAttrs as N, composeExport as z } from "../__builtins__/shared/utils.mjs";
7
- import { lt as H } from "../__builtins__/shared/simple-version-compare.mjs";
8
- import { mapReadPretty as I } from "../__builtins__/shared/transform-component.mjs";
9
- import '../styles/radio/index.css';const V = /* @__PURE__ */ x({
3
+ import "@formily/reactive";
4
+ import "@vueuse/core";
5
+ import { defineComponent as O, computed as c, useSlots as x, openBlock as t, createBlock as p, unref as u, normalizeProps as A, guardReactiveProps as L, withCtx as i, createElementBlock as f, Fragment as d, renderList as _, resolveDynamicComponent as y, mergeProps as b, createTextVNode as h, toDisplayString as j, renderSlot as w } from "vue";
6
+ import { mapReadPretty as D } from "../__builtins__/shared/transform-component.mjs";
7
+ import { useCleanAttrs as F, composeExport as N } from "../__builtins__/shared/utils.mjs";
8
+ import { PreviewText as z } from "../preview-text/index.mjs";
9
+ import { isPlainObj as H } from "@formily/shared";
10
+ import { lt as I } from "../__builtins__/shared/simple-version-compare.mjs";
11
+ import "@formily/core";
12
+ import "@silver-formily/reactive-vue";
13
+ import '../styles/radio/index.css';const V = /* @__PURE__ */ O({
10
14
  name: "FRadioGroup",
11
15
  __name: "radio-group",
12
16
  props: {
@@ -20,30 +24,30 @@ import '../styles/radio/index.css';const V = /* @__PURE__ */ x({
20
24
  }
21
25
  },
22
26
  setup(P) {
23
- const o = P, { props: R } = N(), l = c(() => o.optionType === "button" ? B : v), S = H(G, "2.6.0");
24
- function i(e) {
25
- return F(e);
27
+ const o = P, { props: R } = F(), s = c(() => o.optionType === "button" ? B : v), S = I(G, "2.6.0");
28
+ function l(e) {
29
+ return H(e);
26
30
  }
27
31
  function g(e, n) {
28
- return i(o.options[n]) ? o.options[n].label : e.label;
32
+ return l(o.options[n]) ? o.options[n].label : e.label;
29
33
  }
30
- const m = c(() => o.options.map((e) => i(e) ? S ? {
34
+ const m = c(() => o.options.map((e) => l(e) ? S ? {
31
35
  ...e,
32
36
  label: e.value
33
37
  } : e : {
34
38
  label: e,
35
39
  value: e
36
- })), k = A();
37
- return (e, n) => (t(), p(u(C), L(h(u(R))), {
38
- default: s(() => [
39
- u(k).option ? (t(!0), f(d, { key: 1 }, _(m.value, (r, a) => (t(), p(y(l.value), b({ key: a }, { ref_for: !0 }, r), {
40
- default: s(() => [
41
- D(e.$slots, "option", { option: r })
40
+ })), k = x();
41
+ return (e, n) => (t(), p(u(C), A(L(u(R))), {
42
+ default: i(() => [
43
+ u(k).option ? (t(!0), f(d, { key: 1 }, _(m.value, (r, a) => (t(), p(y(s.value), b({ key: a }, { ref_for: !0 }, r), {
44
+ default: i(() => [
45
+ w(e.$slots, "option", { option: r })
42
46
  ]),
43
47
  _: 2
44
- }, 1040))), 128)) : (t(!0), f(d, { key: 0 }, _(m.value, (r, a) => (t(), p(y(l.value), b({ key: a }, { ref_for: !0 }, r), {
45
- default: s(() => [
46
- j(w(g(r, a)), 1)
48
+ }, 1040))), 128)) : (t(!0), f(d, { key: 0 }, _(m.value, (r, a) => (t(), p(y(s.value), b({ key: a }, { ref_for: !0 }, r), {
49
+ default: i(() => [
50
+ h(j(g(r, a)), 1)
47
51
  ]),
48
52
  _: 2
49
53
  }, 1040))), 128))
@@ -54,12 +58,12 @@ import '../styles/radio/index.css';const V = /* @__PURE__ */ x({
54
58
  }), $ = E(
55
59
  V,
56
60
  T({ dataSource: "options", disabled: !0 }),
57
- I(O.Select)
58
- ), Y = z(v, {
61
+ D(z.Select)
62
+ ), te = N(v, {
59
63
  Group: $
60
64
  });
61
65
  export {
62
- Y as Radio,
63
- Y as default
66
+ te as Radio,
67
+ te as default
64
68
  };
65
69
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/radio/radio-group.vue","../../src/radio/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { RadioProps } from 'element-plus'\r\nimport type { PropType } from 'vue'\r\nimport { isPlainObj } from '@formily/shared'\r\nimport { ElRadio, ElRadioButton, ElRadioGroup, version } from 'element-plus'\r\nimport { computed, useSlots } from 'vue'\r\nimport { lt, useCleanAttrs } from '../__builtins__'\r\n\r\ndefineOptions({\r\n name: 'FRadioGroup',\r\n})\r\n\r\nconst props = defineProps({\r\n options: {\r\n type: Array as PropType<Array<RadioProps | string | number>>,\r\n default: () => [],\r\n },\r\n optionType: {\r\n type: String as PropType<'default' | 'button'>,\r\n default: 'default',\r\n },\r\n})\r\n\r\nconst { props: radioProps } = useCleanAttrs()\r\n\r\nconst OptionType = computed(() => {\r\n return props.optionType === 'button' ? ElRadioButton : ElRadio\r\n})\r\nconst IS_LESS_THAN_2_6_0 = lt(version, '2.6.0')\r\n\r\nfunction isRadioPropsObject(option: any): option is RadioProps {\r\n return isPlainObj(option)\r\n}\r\n\r\nfunction getOptionLabel(option: any, index: number) {\r\n if (isRadioPropsObject(props.options[index])) {\r\n return props.options[index].label\r\n }\r\n return option.label\r\n}\r\n\r\nconst compatiableProps = computed(() => {\r\n return props.options.map((option) => {\r\n if (!isRadioPropsObject(option)) {\r\n return {\r\n label: option,\r\n value: option,\r\n }\r\n }\r\n /* istanbul ignore if -- @preserve */\r\n if (IS_LESS_THAN_2_6_0) {\r\n return {\r\n ...option,\r\n label: option.value,\r\n }\r\n }\r\n return option\r\n })\r\n})\r\n\r\nconst slots = useSlots()\r\n</script>\r\n\r\n<template>\r\n <ElRadioGroup v-bind=\"radioProps\">\r\n <template v-if=\"!slots.option\">\r\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\r\n {{ getOptionLabel(option, index) }}\r\n </component>\r\n </template>\r\n <template v-else>\r\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\r\n <slot name=\"option\" :option=\"option\" />\r\n </component>\r\n </template>\r\n </ElRadioGroup>\r\n</template>\r\n","import { connect, mapProps } from '@silver-formily/vue'\r\nimport { ElRadio } from 'element-plus'\r\nimport { composeExport, mapReadPretty } from '../__builtins__'\r\nimport { PreviewText } from '../preview-text'\r\nimport FRadioGroup from './radio-group.vue'\r\nimport './style.scss'\r\n\r\nconst RadioGroup = connect<typeof FRadioGroup>(\r\n FRadioGroup,\r\n mapProps({ dataSource: 'options', disabled: true }),\r\n mapReadPretty(PreviewText.Select),\r\n)\r\nexport const Radio = composeExport(ElRadio, {\r\n Group: RadioGroup,\r\n})\r\n\r\nexport default Radio\r\n"],"names":["props","__props","radioProps","useCleanAttrs","OptionType","computed","ElRadioButton","ElRadio","IS_LESS_THAN_2_6_0","lt","version","isRadioPropsObject","option","isPlainObj","getOptionLabel","index","compatiableProps","slots","useSlots","_openBlock","_createBlock","_unref","_createElementBlock","_Fragment","_renderList","_resolveDynamicComponent","_mergeProps","_renderSlot","_ctx","RadioGroup","connect","FRadioGroup","mapProps","mapReadPretty","PreviewText","Radio","composeExport"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAYA,UAAMA,IAAQC,GAWR,EAAE,OAAOC,EAAA,IAAeC,EAAA,GAExBC,IAAaC,EAAS,MACnBL,EAAM,eAAe,WAAWM,IAAgBC,CACxD,GACKC,IAAqBC,EAAGC,GAAS,OAAO;AAE9C,aAASC,EAAmBC,GAAmC;AAC7D,aAAOC,EAAWD,CAAM;AAAA,IAC1B;AAEA,aAASE,EAAeF,GAAaG,GAAe;AAClD,aAAIJ,EAAmBX,EAAM,QAAQe,CAAK,CAAC,IAClCf,EAAM,QAAQe,CAAK,EAAE,QAEvBH,EAAO;AAAA,IAChB;AAEA,UAAMI,IAAmBX,EAAS,MACzBL,EAAM,QAAQ,IAAI,CAACY,MACnBD,EAAmBC,CAAM,IAO1BJ,IACK;AAAA,MACL,GAAGI;AAAA,MACH,OAAOA,EAAO;AAAA,IAAA,IAGXA,IAZE;AAAA,MACL,OAAOA;AAAA,MACP,OAAOA;AAAA,IAAA,CAWZ,CACF,GAEKK,IAAQC,EAAA;sBAIZC,EAAA,GAAAC,EAWeC,UAXOA,EAAAnB,CAAA,CAAU,CAAA,GAAA;AAAA,iBAC9B,MAIW;AAAA,QAJMmB,EAAAJ,CAAA,EAAM,UAMrBE,EAAA,EAAA,GAAAG,EAEYC,GAAA,EAAA,KAAA,KAAAC,EAF0CR,EAAA,OAAgB,CAAlCJ,GAAQG,YAA5CK,EAEYK,EAFIrB,OAAU,GAA1BsB,EAEY,EAF6D,KAAKX,KAAK,EAAA,SAAA,GAAA,GAAUH,CAAM,GAAA;AAAA,qBACjG,MAAuC;AAAA,YAAvCe,EAAuCC,EAAA,QAAA,UAAA,EAAlB,QAAAhB,GAAc;AAAA,UAAA;;6BANrCO,EAAA,EAAA,GAAAG,EAEYC,GAAA,EAAA,KAAA,KAAAC,EAF0CR,EAAA,OAAgB,CAAlCJ,GAAQG,YAA5CK,EAEYK,EAFIrB,OAAU,GAA1BsB,EAEY,EAF6D,KAAKX,KAAK,EAAA,SAAA,GAAA,GAAUH,CAAM,GAAA;AAAA,qBACjG,MAAmC;AAAA,gBAAhCE,EAAeF,GAAQG,CAAK,CAAA,GAAA,CAAA;AAAA,UAAA;;;;;;;IC5DjCc,IAAaC;AAAA,EACjBC;AAAAA,EACAC,EAAS,EAAE,YAAY,WAAW,UAAU,IAAM;AAAA,EAClDC,EAAcC,EAAY,MAAM;AAClC,GACaC,IAAQC,EAAc7B,GAAS;AAAA,EAC1C,OAAOsB;AACT,CAAC;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/radio/radio-group.vue","../../src/radio/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { RadioProps } from 'element-plus'\nimport type { PropType } from 'vue'\nimport { isPlainObj } from '@formily/shared'\nimport { ElRadio, ElRadioButton, ElRadioGroup, version } from 'element-plus'\nimport { computed, useSlots } from 'vue'\nimport { lt, useCleanAttrs } from '../__builtins__'\n\ndefineOptions({\n name: 'FRadioGroup',\n})\n\nconst props = defineProps({\n options: {\n type: Array as PropType<Array<RadioProps | string | number>>,\n default: () => [],\n },\n optionType: {\n type: String as PropType<'default' | 'button'>,\n default: 'default',\n },\n})\n\nconst { props: radioProps } = useCleanAttrs()\n\nconst OptionType = computed(() => {\n return props.optionType === 'button' ? ElRadioButton : ElRadio\n})\nconst IS_LESS_THAN_2_6_0 = lt(version, '2.6.0')\n\nfunction isRadioPropsObject(option: any): option is RadioProps {\n return isPlainObj(option)\n}\n\nfunction getOptionLabel(option: any, index: number) {\n if (isRadioPropsObject(props.options[index])) {\n return props.options[index].label\n }\n return option.label\n}\n\nconst compatiableProps = computed(() => {\n return props.options.map((option) => {\n if (!isRadioPropsObject(option)) {\n return {\n label: option,\n value: option,\n }\n }\n /* istanbul ignore if -- @preserve */\n if (IS_LESS_THAN_2_6_0) {\n return {\n ...option,\n label: option.value,\n }\n }\n return option\n })\n})\n\nconst slots = useSlots()\n</script>\n\n<template>\n <ElRadioGroup v-bind=\"radioProps\">\n <template v-if=\"!slots.option\">\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\n {{ getOptionLabel(option, index) }}\n </component>\n </template>\n <template v-else>\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\n <slot name=\"option\" :option=\"option\" />\n </component>\n </template>\n </ElRadioGroup>\n</template>\n","import { connect, mapProps } from '@silver-formily/vue'\nimport { ElRadio } from 'element-plus'\nimport { composeExport, mapReadPretty } from '../__builtins__'\nimport { PreviewText } from '../preview-text'\nimport FRadioGroup from './radio-group.vue'\nimport './style.scss'\n\nconst RadioGroup = connect<typeof FRadioGroup>(\n FRadioGroup,\n mapProps({ dataSource: 'options', disabled: true }),\n mapReadPretty(PreviewText.Select),\n)\nexport const Radio = composeExport(ElRadio, {\n Group: RadioGroup,\n})\n\nexport default Radio\n"],"names":["props","__props","radioProps","useCleanAttrs","OptionType","computed","ElRadioButton","ElRadio","IS_LESS_THAN_2_6_0","lt","version","isRadioPropsObject","option","isPlainObj","getOptionLabel","index","compatiableProps","slots","useSlots","_openBlock","_createBlock","_unref","_createElementBlock","_Fragment","_renderList","_resolveDynamicComponent","_mergeProps","_renderSlot","_ctx","RadioGroup","connect","FRadioGroup","mapProps","mapReadPretty","PreviewText","Radio","composeExport"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,UAAMA,IAAQC,GAWR,EAAE,OAAOC,EAAA,IAAeC,EAAA,GAExBC,IAAaC,EAAS,MACnBL,EAAM,eAAe,WAAWM,IAAgBC,CACxD,GACKC,IAAqBC,EAAGC,GAAS,OAAO;AAE9C,aAASC,EAAmBC,GAAmC;AAC7D,aAAOC,EAAWD,CAAM;AAAA,IAC1B;AAEA,aAASE,EAAeF,GAAaG,GAAe;AAClD,aAAIJ,EAAmBX,EAAM,QAAQe,CAAK,CAAC,IAClCf,EAAM,QAAQe,CAAK,EAAE,QAEvBH,EAAO;AAAA,IAChB;AAEA,UAAMI,IAAmBX,EAAS,MACzBL,EAAM,QAAQ,IAAI,CAACY,MACnBD,EAAmBC,CAAM,IAO1BJ,IACK;AAAA,MACL,GAAGI;AAAA,MACH,OAAOA,EAAO;AAAA,IAAA,IAGXA,IAZE;AAAA,MACL,OAAOA;AAAA,MACP,OAAOA;AAAA,IAAA,CAWZ,CACF,GAEKK,IAAQC,EAAA;sBAIZC,EAAA,GAAAC,EAWeC,UAXOA,EAAAnB,CAAA,CAAU,CAAA,GAAA;AAAA,iBAC9B,MAIW;AAAA,QAJMmB,EAAAJ,CAAA,EAAM,UAMrBE,EAAA,EAAA,GAAAG,EAEYC,GAAA,EAAA,KAAA,KAAAC,EAF0CR,EAAA,OAAgB,CAAlCJ,GAAQG,YAA5CK,EAEYK,EAFIrB,OAAU,GAA1BsB,EAEY,EAF6D,KAAKX,KAAK,EAAA,SAAA,GAAA,GAAUH,CAAM,GAAA;AAAA,qBACjG,MAAuC;AAAA,YAAvCe,EAAuCC,EAAA,QAAA,UAAA,EAAlB,QAAAhB,GAAc;AAAA,UAAA;;6BANrCO,EAAA,EAAA,GAAAG,EAEYC,GAAA,EAAA,KAAA,KAAAC,EAF0CR,EAAA,OAAgB,CAAlCJ,GAAQG,YAA5CK,EAEYK,EAFIrB,OAAU,GAA1BsB,EAEY,EAF6D,KAAKX,KAAK,EAAA,SAAA,GAAA,GAAUH,CAAM,GAAA;AAAA,qBACjG,MAAmC;AAAA,gBAAhCE,EAAeF,GAAQG,CAAK,CAAA,GAAA,CAAA;AAAA,UAAA;;;;;;;IC5DjCc,IAAaC;AAAA,EACjBC;AAAAA,EACAC,EAAS,EAAE,YAAY,WAAW,UAAU,IAAM;AAAA,EAClDC,EAAcC,EAAY,MAAM;AAClC,GACaC,KAAQC,EAAc7B,GAAS;AAAA,EAC1C,OAAOsB;AACT,CAAC;"}
@@ -1,14 +1,17 @@
1
- import { connect as e, mapProps as r } from "@silver-formily/vue";
2
- import { ElRate as t } from "element-plus";
3
- import { PreviewText as o } from "../preview-text/index.mjs";
4
- import { mapReadPretty as a } from "../__builtins__/shared/transform-component.mjs";
5
- const f = e(
6
- t,
7
- r({ readOnly: "readonly", disabled: !0 }),
8
- a(o.Rate)
1
+ import { connect as r, mapProps as t } from "@silver-formily/vue";
2
+ import { ElRate as o } from "element-plus";
3
+ import "@formily/reactive";
4
+ import "@vueuse/core";
5
+ import "vue";
6
+ import { mapReadPretty as e } from "../__builtins__/shared/transform-component.mjs";
7
+ import { PreviewText as m } from "../preview-text/index.mjs";
8
+ const s = r(
9
+ o,
10
+ t({ readOnly: "readonly", disabled: !0 }),
11
+ e(m.Rate)
9
12
  );
10
13
  export {
11
- f as Rate,
12
- f as default
14
+ s as Rate,
15
+ s as default
13
16
  };
14
17
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/rate/index.ts"],"sourcesContent":["import { connect, mapProps } from '@silver-formily/vue'\r\nimport { ElRate } from 'element-plus'\r\nimport { mapReadPretty } from '../__builtins__'\r\nimport { PreviewText } from '../preview-text'\r\n\r\nexport type RateProps = typeof ElRate\r\n\r\nexport const Rate = connect<typeof ElRate>(\r\n ElRate,\r\n mapProps({ readOnly: 'readonly', disabled: true }),\r\n mapReadPretty(PreviewText.Rate),\r\n)\r\n\r\nexport default Rate\r\n"],"names":["Rate","connect","ElRate","mapProps","mapReadPretty","PreviewText"],"mappings":";;;;AAOO,MAAMA,IAAOC;AAAA,EAClBC;AAAA,EACAC,EAAS,EAAE,UAAU,YAAY,UAAU,IAAM;AAAA,EACjDC,EAAcC,EAAY,IAAI;AAChC;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/rate/index.ts"],"sourcesContent":["import { connect, mapProps } from '@silver-formily/vue'\nimport { ElRate } from 'element-plus'\nimport { mapReadPretty } from '../__builtins__'\nimport { PreviewText } from '../preview-text'\n\nexport type RateProps = typeof ElRate\n\nexport const Rate = connect<typeof ElRate>(\n ElRate,\n mapProps({ readOnly: 'readonly', disabled: true }),\n mapReadPretty(PreviewText.Rate),\n)\n\nexport default Rate\n"],"names":["Rate","connect","ElRate","mapProps","mapReadPretty","PreviewText"],"mappings":";;;;;;;AAOO,MAAMA,IAAOC;AAAA,EAClBC;AAAA,EACAC,EAAS,EAAE,UAAU,YAAY,UAAU,IAAM;AAAA,EACjDC,EAAcC,EAAY,IAAI;AAChC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/reset/reset.vue","../../src/reset/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport type { PropType } from 'vue'\r\nimport { useParentForm } from '@silver-formily/vue'\r\nimport { ElButton } from 'element-plus'\r\n\r\ndefineOptions({\r\n name: 'FReset',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps({\r\n onClick: Function as PropType<(e: MouseEvent) => void | boolean>,\r\n forceClear: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n validate: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n onResetValidateSuccess: Function as PropType<(payload: any) => void>,\r\n onResetValidateFailed: Function as PropType<(error: any) => void>,\r\n})\r\n\r\nconst formRef = useParentForm()\r\n\r\nfunction handleClick(e: MouseEvent) {\r\n if (props.onClick && (props.onClick)?.(e) === false)\r\n return\r\n\r\n const form = formRef?.value\r\n form?.reset('*', {\r\n forceClear: props.forceClear,\r\n })\r\n props.validate && form?.validate()\r\n .then(props.onResetValidateSuccess)\r\n .catch(error => props.onResetValidateFailed?.(error))\r\n}\r\n</script>\r\n\r\n<template>\r\n <ElButton v-bind=\"$attrs\" @click=\"handleClick\">\r\n <slot />\r\n </ElButton>\r\n</template>\r\n","import { observer } from '@silver-formily/reactive-vue'\r\nimport FReset from './reset.vue'\r\n\r\nexport const Reset = observer(FReset)\r\n\r\nexport default Reset\r\n"],"names":["props","__props","formRef","useParentForm","handleClick","e","form","error","_openBlock","_createBlock","_unref","_mergeProps","_ctx","_renderSlot","Reset","observer","FReset"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAUA,UAAMA,IAAQC,GAcRC,IAAUC,EAAA;AAEhB,aAASC,EAAYC,GAAe;AAClC,UAAIL,EAAM,WAAYA,EAAM,UAAWK,CAAC,MAAM;AAC5C;AAEF,YAAMC,IAAOJ,GAAS;AACtB,MAAAI,GAAM,MAAM,KAAK;AAAA,QACf,YAAYN,EAAM;AAAA,MAAA,CACnB,GACDA,EAAM,YAAYM,GAAM,SAAA,EACrB,KAAKN,EAAM,sBAAsB,EACjC,MAAM,CAAAO,MAASP,EAAM,wBAAwBO,CAAK,CAAC;AAAA,IACxD;sBAIEC,EAAA,GAAAC,EAEWC,MAFXC,EAEWC,UAFa,EAAG,SAAOR,EAAA,CAAW,GAAA;AAAA,iBAC3C,MAAQ;AAAA,QAARS,EAAQD,EAAA,QAAA,SAAA;AAAA,MAAA;;;;ICvCCE,IAAQC,EAASC,CAAM;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/reset/reset.vue","../../src/reset/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { PropType } from 'vue'\nimport { useParentForm } from '@silver-formily/vue'\nimport { ElButton } from 'element-plus'\n\ndefineOptions({\n name: 'FReset',\n inheritAttrs: false,\n})\n\nconst props = defineProps({\n onClick: Function as PropType<(e: MouseEvent) => void | boolean>,\n forceClear: {\n type: Boolean,\n default: false,\n },\n validate: {\n type: Boolean,\n default: false,\n },\n onResetValidateSuccess: Function as PropType<(payload: any) => void>,\n onResetValidateFailed: Function as PropType<(error: any) => void>,\n})\n\nconst formRef = useParentForm()\n\nfunction handleClick(e: MouseEvent) {\n if (props.onClick && (props.onClick)?.(e) === false)\n return\n\n const form = formRef?.value\n form?.reset('*', {\n forceClear: props.forceClear,\n })\n props.validate && form?.validate()\n .then(props.onResetValidateSuccess)\n .catch(error => props.onResetValidateFailed?.(error))\n}\n</script>\n\n<template>\n <ElButton v-bind=\"$attrs\" @click=\"handleClick\">\n <slot />\n </ElButton>\n</template>\n","import { observer } from '@silver-formily/reactive-vue'\nimport FReset from './reset.vue'\n\nexport const Reset = observer(FReset)\n\nexport default Reset\n"],"names":["props","__props","formRef","useParentForm","handleClick","e","form","error","_openBlock","_createBlock","_unref","_mergeProps","_ctx","_renderSlot","Reset","observer","FReset"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAUA,UAAMA,IAAQC,GAcRC,IAAUC,EAAA;AAEhB,aAASC,EAAYC,GAAe;AAClC,UAAIL,EAAM,WAAYA,EAAM,UAAWK,CAAC,MAAM;AAC5C;AAEF,YAAMC,IAAOJ,GAAS;AACtB,MAAAI,GAAM,MAAM,KAAK;AAAA,QACf,YAAYN,EAAM;AAAA,MAAA,CACnB,GACDA,EAAM,YAAYM,GAAM,SAAA,EACrB,KAAKN,EAAM,sBAAsB,EACjC,MAAM,CAAAO,MAASP,EAAM,wBAAwBO,CAAK,CAAC;AAAA,IACxD;sBAIEC,EAAA,GAAAC,EAEWC,MAFXC,EAEWC,UAFa,EAAG,SAAOR,EAAA,CAAW,GAAA;AAAA,iBAC3C,MAAQ;AAAA,QAARS,EAAQD,EAAA,QAAA,SAAA;AAAA,MAAA;;;;ICvCCE,IAAQC,EAASC,CAAM;"}
@@ -1,9 +1,13 @@
1
- import { connect as m, mapProps as a } from "@silver-formily/vue";
2
- import { PreviewText as i } from "../preview-text/index.mjs";
1
+ import { connect as m, mapProps as i } from "@silver-formily/vue";
2
+ import { ElSegmented as a } from "element-plus";
3
+ import "@formily/reactive";
4
+ import "@vueuse/core";
3
5
  import { defineComponent as c, useSlots as d, openBlock as l, createBlock as f, unref as e, mergeProps as u, createSlots as S, withCtx as g, renderSlot as P, normalizeProps as _, guardReactiveProps as h } from "vue";
4
- import { ElSegmented as k } from "element-plus";
5
- import { useCleanAttrs as v } from "../__builtins__/shared/utils.mjs";
6
- import { mapReadPretty as x } from "../__builtins__/shared/transform-component.mjs";
6
+ import { mapReadPretty as k } from "../__builtins__/shared/transform-component.mjs";
7
+ import { PreviewText as v } from "../preview-text/index.mjs";
8
+ import "@formily/core";
9
+ import "@silver-formily/reactive-vue";
10
+ import { useCleanAttrs as x } from "../__builtins__/shared/utils.mjs";
7
11
  const C = /* @__PURE__ */ c({
8
12
  name: "FSegmented",
9
13
  inheritAttrs: !1,
@@ -12,8 +16,8 @@ const C = /* @__PURE__ */ c({
12
16
  options: {}
13
17
  },
14
18
  setup(t) {
15
- const o = t, r = d(), { props: s } = v();
16
- return (n, w) => (l(), f(e(k), u(e(s), {
19
+ const o = t, r = d(), { props: s } = x();
20
+ return (n, w) => (l(), f(e(a), u(e(s), {
17
21
  options: o.options
18
22
  }), S({ _: 2 }, [
19
23
  e(r).default ? {
@@ -25,13 +29,13 @@ const C = /* @__PURE__ */ c({
25
29
  } : void 0
26
30
  ]), 1040, ["options"]));
27
31
  }
28
- }), E = m(
32
+ }), j = m(
29
33
  C,
30
- a({ dataSource: "options", disabled: !0 }),
31
- x(i.Select)
34
+ i({ dataSource: "options", disabled: !0 }),
35
+ k(v.Select)
32
36
  );
33
37
  export {
34
- E as Segmented,
35
- E as default
38
+ j as Segmented,
39
+ j as default
36
40
  };
37
41
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/segmented/segmented.vue","../../src/segmented/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { ElSegmented } from 'element-plus'\r\nimport { useSlots } from 'vue'\r\nimport { useCleanAttrs } from '../__builtins__'\r\n\r\ndefineOptions({\r\n name: 'FSegmented',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps<{\r\n options?: SegmentedOptions\r\n}>()\r\n\r\ntype SegmentedOption = NonNullable<InstanceType<typeof ElSegmented>['$props']['options']>[number]\r\n\r\ntype SegmentedOptions = SegmentedOption[]\r\n\r\nconst slots = useSlots()\r\nconst { props: segmentedProps } = useCleanAttrs()\r\n</script>\r\n\r\n<template>\r\n <ElSegmented v-bind=\"segmentedProps\" :options=\"props.options\">\r\n <template v-if=\"slots.default\" #default=\"slotData\">\r\n <slot v-bind=\"slotData\" />\r\n </template>\r\n </ElSegmented>\r\n</template>\r\n","import { connect, mapProps } from '@silver-formily/vue'\r\nimport { mapReadPretty } from '../__builtins__'\r\nimport { PreviewText } from '../preview-text'\r\nimport FSegmented from './segmented.vue'\r\n\r\nexport const Segmented = connect<typeof FSegmented>(\r\n FSegmented,\r\n mapProps({ dataSource: 'options', disabled: true }),\r\n mapReadPretty(PreviewText.Select),\r\n)\r\n\r\nexport default Segmented\r\n"],"names":["props","__props","slots","useSlots","segmentedProps","useCleanAttrs","_createBlock","_unref","ElSegmented","_mergeProps","_withCtx","slotData","_renderSlot","_ctx","Segmented","connect","FSegmented","mapProps","mapReadPretty","PreviewText"],"mappings":";;;;;;;;;;;;;;AAUA,UAAMA,IAAQC,GAQRC,IAAQC,EAAA,GACR,EAAE,OAAOC,EAAA,IAAmBC,EAAA;2BAIhCC,EAIcC,EAAAC,CAAA,GAJdC,EAIcF,EAAAH,CAAA,GAJqB;AAAA,MAAG,SAASJ,EAAM;AAAA,IAAA;MACnCO,EAAAL,CAAA,EAAM;cAAU;AAAA,QAC9B,IAAAQ,EAAA,CADuCC,MAAQ;AAAA,UAC/CC,EAA0BC,yBAAZF,CAAQ,CAAA,CAAA;AAAA,QAAA;;;;;ICpBfG,IAAYC;AAAA,EACvBC;AAAAA,EACAC,EAAS,EAAE,YAAY,WAAW,UAAU,IAAM;AAAA,EAClDC,EAAcC,EAAY,MAAM;AAClC;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/segmented/segmented.vue","../../src/segmented/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ElSegmented } from 'element-plus'\nimport { useSlots } from 'vue'\nimport { useCleanAttrs } from '../__builtins__'\n\ndefineOptions({\n name: 'FSegmented',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n options?: SegmentedOptions\n}>()\n\ntype SegmentedOption = NonNullable<InstanceType<typeof ElSegmented>['$props']['options']>[number]\n\ntype SegmentedOptions = SegmentedOption[]\n\nconst slots = useSlots()\nconst { props: segmentedProps } = useCleanAttrs()\n</script>\n\n<template>\n <ElSegmented v-bind=\"segmentedProps\" :options=\"props.options\">\n <template v-if=\"slots.default\" #default=\"slotData\">\n <slot v-bind=\"slotData\" />\n </template>\n </ElSegmented>\n</template>\n","import { connect, mapProps } from '@silver-formily/vue'\nimport { mapReadPretty } from '../__builtins__'\nimport { PreviewText } from '../preview-text'\nimport FSegmented from './segmented.vue'\n\nexport const Segmented = connect<typeof FSegmented>(\n FSegmented,\n mapProps({ dataSource: 'options', disabled: true }),\n mapReadPretty(PreviewText.Select),\n)\n\nexport default Segmented\n"],"names":["props","__props","slots","useSlots","segmentedProps","useCleanAttrs","_createBlock","_unref","ElSegmented","_mergeProps","_withCtx","slotData","_renderSlot","_ctx","Segmented","connect","FSegmented","mapProps","mapReadPretty","PreviewText"],"mappings":";;;;;;;;;;;;;;;;;;AAUA,UAAMA,IAAQC,GAQRC,IAAQC,EAAA,GACR,EAAE,OAAOC,EAAA,IAAmBC,EAAA;2BAIhCC,EAIcC,EAAAC,CAAA,GAJdC,EAIcF,EAAAH,CAAA,GAJqB;AAAA,MAAG,SAASJ,EAAM;AAAA,IAAA;MACnCO,EAAAL,CAAA,EAAM;cAAU;AAAA,QAC9B,IAAAQ,EAAA,CADuCC,MAAQ;AAAA,UAC/CC,EAA0BC,yBAAZF,CAAQ,CAAA,CAAA;AAAA,QAAA;;;;;ICpBfG,IAAYC;AAAA,EACvBC;AAAAA,EACAC,EAAS,EAAE,YAAY,WAAW,UAAU,IAAM;AAAA,EAClDC,EAAcC,EAAY,MAAM;AAClC;"}