@silver-formily/element-plus 4.0.3 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/__builtins__/shared/loading.mjs.map +1 -1
- package/esm/__builtins__/shared/transform-component.mjs +1 -1
- package/esm/__builtins__/shared/transform-component.mjs.map +1 -1
- package/esm/__builtins__/shared/utils.mjs +7 -5
- package/esm/__builtins__/shared/utils.mjs.map +1 -1
- package/esm/array-base/array-base-inner.mjs.map +1 -1
- package/esm/array-base/array-base-move-down.mjs +1 -1
- package/esm/array-base/array-base-move-down.mjs.map +1 -1
- package/esm/array-base/array-base-move-up.mjs +1 -1
- package/esm/array-base/array-base-move-up.mjs.map +1 -1
- package/esm/array-base/array-base-remove.mjs +1 -1
- package/esm/array-base/array-base-remove.mjs.map +1 -1
- package/esm/array-base/types.d.ts +2 -2
- package/esm/array-base/utils.d.ts +1 -1
- package/esm/array-base/utils.mjs +1 -1
- package/esm/array-base/utils.mjs.map +1 -1
- package/esm/array-cards/array-cards.mjs +1 -1
- package/esm/array-cards/array-cards.mjs.map +1 -1
- package/esm/array-collapse/array-collapse-item.mjs +1 -1
- package/esm/array-collapse/array-collapse-item.mjs.map +1 -1
- package/esm/array-collapse/array-collapse.mjs +3 -4
- package/esm/array-collapse/array-collapse.mjs.map +1 -1
- package/esm/array-items/array-items.mjs +3 -8
- package/esm/array-items/array-items.mjs.map +1 -1
- package/esm/array-list-tabs/array-list-tabs.mjs +57 -51
- package/esm/array-list-tabs/array-list-tabs.mjs.map +1 -1
- package/esm/array-list-tabs/utils.mjs.map +1 -1
- package/esm/array-table/array-table.mjs +4 -18
- package/esm/array-table/array-table.mjs.map +1 -1
- package/esm/array-table/utils.mjs.map +1 -1
- package/esm/array-tabs/array-tabs.mjs +1 -1
- package/esm/array-tabs/array-tabs.mjs.map +1 -1
- package/esm/autocomplete/autocomplete.mjs.map +1 -1
- package/esm/autocomplete/index.d.ts +1 -41
- package/esm/cascader/index.d.ts +1 -31
- package/esm/checkbox/checkbox-group.mjs +1 -1
- package/esm/checkbox/checkbox-group.mjs.map +1 -1
- package/esm/checkbox/index.d.ts +1 -819
- package/esm/color-picker/index.d.ts +1 -210
- package/esm/color-picker-panel/index.d.ts +1 -130
- package/esm/date-picker/index.d.ts +1 -447
- package/esm/date-picker-panel/index.d.ts +1 -147
- package/esm/editable/editable-popover.mjs +1 -1
- package/esm/editable/editable-popover.mjs.map +1 -1
- package/esm/editable/editable.mjs +1 -1
- package/esm/editable/editable.mjs.map +1 -1
- package/esm/editable/index.d.ts +1 -60
- package/esm/form/form.mjs.map +1 -1
- package/esm/form/form.vue.d.ts +1 -1
- package/esm/form-collapse/form-collapse.mjs +1 -1
- package/esm/form-collapse/form-collapse.mjs.map +1 -1
- package/esm/form-collapse/index.d.ts +3 -3
- package/esm/form-collapse/utils.d.ts +2 -2
- package/esm/form-collapse/utils.mjs +2 -2
- package/esm/form-collapse/utils.mjs.map +1 -1
- package/esm/form-dialog/dialog-content.mjs +1 -1
- package/esm/form-dialog/dialog-content.mjs.map +1 -1
- package/esm/form-dialog/index.mjs +3 -3
- package/esm/form-dialog/index.mjs.map +1 -1
- package/esm/form-dialog/types.d.ts +2 -2
- package/esm/form-drawer/drawer-content.mjs +1 -1
- package/esm/form-drawer/drawer-content.mjs.map +1 -1
- package/esm/form-drawer/index.mjs +3 -3
- package/esm/form-drawer/index.mjs.map +1 -1
- package/esm/form-drawer/types.d.ts +2 -2
- package/esm/form-item/form-item.mjs +1 -1
- package/esm/form-item/form-item.mjs.map +1 -1
- package/esm/form-item/index.d.ts +1 -83
- package/esm/form-item/index.mjs +1 -1
- package/esm/form-item/index.mjs.map +1 -1
- package/esm/form-item/utils.mjs +1 -1
- package/esm/form-item/utils.mjs.map +1 -1
- package/esm/form-layout/form-layout.mjs +1 -1
- package/esm/form-layout/form-layout.mjs.map +1 -1
- package/esm/form-layout/form-layout.vue.d.ts +1 -1
- package/esm/form-layout/utils.mjs +1 -1
- package/esm/form-layout/utils.mjs.map +1 -1
- package/esm/form-step/form-step.mjs +1 -1
- package/esm/form-step/form-step.mjs.map +1 -1
- package/esm/form-step/types.d.ts +1 -1
- package/esm/form-step/utils.d.ts +1 -1
- package/esm/form-step/utils.mjs +1 -1
- package/esm/form-step/utils.mjs.map +1 -1
- package/esm/form-tab/hooks.mjs.map +1 -1
- package/esm/form-tab/utils.mjs +1 -1
- package/esm/form-tab/utils.mjs.map +1 -1
- package/esm/input/index.d.ts +1 -43
- package/esm/input-number/index.d.ts +1 -328
- package/esm/input-tag/index.d.ts +1 -26
- package/esm/input-tag/input-tag.mjs.map +1 -1
- package/esm/mention/index.d.ts +1 -36
- package/esm/mention/mention.mjs.map +1 -1
- package/esm/pagination/components/pager2.mjs.map +1 -1
- package/esm/pagination/components/sizes2.mjs +1 -1
- package/esm/pagination/components/sizes2.mjs.map +1 -1
- package/esm/password/index.d.ts +1 -42
- package/esm/picker-select/index.d.ts +1 -41
- package/esm/picker-select/picker-select.mjs +1 -1
- package/esm/picker-select/picker-select.mjs.map +1 -1
- package/esm/picker-select/types.d.ts +1 -1
- package/esm/preview-text/cascader.mjs.map +1 -1
- package/esm/preview-text/color-picker.mjs +1 -1
- package/esm/preview-text/color-picker.mjs.map +1 -1
- package/esm/preview-text/input.mjs +1 -1
- package/esm/preview-text/input.mjs.map +1 -1
- package/esm/preview-text/rate.mjs +1 -1
- package/esm/preview-text/rate.mjs.map +1 -1
- package/esm/preview-text/select.mjs +1 -1
- package/esm/preview-text/select.mjs.map +1 -1
- package/esm/preview-text/time-picker.mjs +1 -1
- package/esm/preview-text/time-picker.mjs.map +1 -1
- package/esm/preview-text/tree.mjs.map +1 -1
- package/esm/query-form/hooks.mjs +1 -1
- package/esm/query-form/hooks.mjs.map +1 -1
- package/esm/query-form/index.d.ts +5 -5
- package/esm/query-form/query-form-light.mjs +1 -1
- package/esm/query-form/query-form-light.mjs.map +1 -1
- package/esm/query-form/query-form.mjs +1 -1
- package/esm/query-form/query-form.mjs.map +1 -1
- package/esm/query-form/types.d.ts +2 -2
- package/esm/query-form-item/index.d.ts +1 -152
- package/esm/query-form-item/query-form-item.mjs +2 -2
- package/esm/query-form-item/query-form-item.mjs.map +1 -1
- package/esm/query-form-item/types.d.ts +2 -2
- package/esm/radio/index.d.ts +67 -121
- package/esm/radio/radio-group.mjs +1 -1
- package/esm/radio/radio-group.mjs.map +1 -1
- package/esm/rate/index.d.ts +1 -186
- package/esm/segmented/index.d.ts +1 -28
- package/esm/select/index.d.ts +1 -112
- package/esm/select-table/index.d.ts +1 -61
- package/esm/select-table/select-table.mjs +1 -1
- package/esm/select-table/select-table.mjs.map +1 -1
- package/esm/slider/index.d.ts +1 -178
- package/esm/submit/submit.mjs.map +1 -1
- package/esm/switch/index.d.ts +1 -298
- package/esm/time-picker/index.d.ts +1 -446
- package/esm/time-select/index.d.ts +1 -188
- package/esm/transfer/index.d.ts +1 -268
- package/esm/tree/index.d.ts +1 -45
- package/esm/tree/tree.mjs +1 -1
- package/esm/tree/tree.mjs.map +1 -1
- package/esm/tree-select/index.d.ts +1 -19
- package/esm/tree-select/tree-select.mjs.map +1 -1
- package/esm/upload/index.d.ts +1 -129
- package/esm/upload/upload.mjs +1 -1
- package/esm/upload/upload.mjs.map +1 -1
- package/package.json +18 -14
- package/esm/select-table/types.d.ts +0 -22
- package/esm/tree/types.d.ts +0 -18
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"picker-select.mjs","names":[],"sources":["../../src/picker-select/picker-select.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Field } from '@formily/core'\nimport type { PickerSelectOpenPicker, PickerSelectOption, PickerSelectProps } from './types'\nimport { isArr, isEqual, isValid } from '@formily/shared'\nimport { useField } from '@silver-formily/vue'\nimport { ElOption, ElSelect } from 'element-plus'\nimport { computed, ref } from 'vue'\nimport { useCleanAttrs } from '../__builtins__'\n\ndefineOptions({\n name: 'FPickerSelect',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<PickerSelectProps>(), {\n options: () => [],\n cacheSelectedOptions: true,\n})\n\nconst emit = defineEmits<{\n (e: 'update:modelValue', value: any): void\n}>()\n\nconst slots = defineSlots<{\n empty?: () => any\n prefix?: () => any\n tag?: () => any\n loading?: () => any\n label?: () => any\n}>()\n\nconst ignoredOpenTriggerSelectors = ['.el-select__clear', '.el-tag__close']\n\nconst { props: selectProps } = useCleanAttrs()\nconst fieldRef = useField<Field>()\nconst selectRef = ref<InstanceType<typeof ElSelect>>()\nconst openingPicker = ref(false)\nconst selectedOptionCache = ref<PickerSelectOption[]>([])\nconst ignoreVisibleChangeUntil = ref(0)\n\nconst multiple = computed(() => Boolean(selectProps.value.multiple))\nconst currentValue = computed(() => selectProps.value.modelValue)\nconst baseOptions = computed<PickerSelectOption[]>(() => props.options ?? [])\n\nfunction isSameValue(left: any, right: any) {\n return isEqual(left, right)\n}\n\nfunction hasOption(optionList: PickerSelectOption[], option: PickerSelectOption) {\n return optionList.some(item => isSameValue(item.value, option.value))\n}\n\nfunction createFallbackOption(value: any): PickerSelectOption {\n return {\n label: value,\n value,\n }\n}\n\nconst normalizedValues = computed(() => {\n const value = currentValue.value\n if (multiple.value) {\n return isArr(value) ? value : []\n }\n return isValid(value) ? [value] : []\n})\n\nconst displayOptions = computed<PickerSelectOption[]>(() => {\n const merged = [...baseOptions.value]\n for (const item of selectedOptionCache.value) {\n if (!hasOption(merged, item)) {\n merged.push(item)\n }\n }\n for (const value of normalizedValues.value) {\n if (!merged.some(item => isSameValue(item.value, value))) {\n merged.push(createFallbackOption(value))\n }\n }\n return merged\n})\n\nfunction setValue(value: any) {\n fieldRef.value?.setValue?.(value)\n if (!fieldRef.value) {\n emit('update:modelValue', value)\n }\n}\n\nfunction cacheOptions(optionList: PickerSelectOption[]) {\n if (props.cacheSelectedOptions === false) {\n return\n }\n const merged = [...selectedOptionCache.value]\n for (const item of optionList) {\n const index = merged.findIndex(cacheItem => isSameValue(cacheItem.value, item.value))\n if (index >= 0) {\n merged[index] = item\n }\n else {\n merged.push(item)\n }\n }\n selectedOptionCache.value = merged\n}\n\nfunction clearValue() {\n setValue(multiple.value ? [] : undefined)\n}\n\nfunction shouldIgnoreOpenTrigger(target: EventTarget | null) {\n if (!(target instanceof HTMLElement)) {\n return false\n }\n return ignoredOpenTriggerSelectors.some(selector => target.closest(selector))\n}\n\nfunction ignoreCurrentVisibleChange() {\n ignoreVisibleChangeUntil.value = Date.now() + 200\n}\n\nasync function handleOpenPicker() {\n if (openingPicker.value || typeof props.openPicker !== 'function') {\n return\n }\n\n openingPicker.value = true\n\n try {\n const result = await Promise.resolve(\n (props.openPicker as PickerSelectOpenPicker)({\n field: fieldRef.value,\n dataSource: baseOptions.value,\n multiple: multiple.value,\n }),\n ).catch(() => undefined)\n\n if (multiple.value) {\n if (!isValid(result)) {\n return\n }\n const normalizedResult = isArr(result) ? result : [result]\n cacheOptions(normalizedResult)\n setValue(normalizedResult.map(item => item.value))\n return\n }\n\n if (!isValid(result)) {\n return\n }\n const normalizedResult = isArr(result) ? result[0] : result\n if (!normalizedResult) {\n return\n }\n cacheOptions([normalizedResult])\n setValue(normalizedResult.value)\n }\n finally {\n openingPicker.value = false\n }\n}\n\nfunction handleVisibleChange(visible: boolean) {\n if (!visible) {\n return\n }\n selectRef.value?.blur?.()\n if (Date.now() < ignoreVisibleChangeUntil.value) {\n ignoreVisibleChangeUntil.value = 0\n return\n }\n void handleOpenPicker()\n}\n\nfunction handleTriggerClick(event: MouseEvent) {\n if (typeof props.openPicker !== 'function' || selectProps.value.disabled) {\n return\n }\n if (shouldIgnoreOpenTrigger(event.target)) {\n ignoreCurrentVisibleChange()\n return\n }\n ignoreVisibleChangeUntil.value = 0\n}\n\nfunction handleRemoveTag(value: any) {\n if (!multiple.value) {\n return\n }\n setValue(normalizedValues.value.filter(item => !isSameValue(item, value)))\n}\n</script>\n\n<template>\n <ElSelect\n ref=\"selectRef\"\n v-bind=\"selectProps\"\n @click=\"handleTriggerClick\"\n @clear=\"clearValue\"\n @remove-tag=\"handleRemoveTag\"\n @visible-change=\"handleVisibleChange\"\n >\n <ElOption\n v-for=\"option of displayOptions\"\n :key=\"typeof option.value === 'object' ? JSON.stringify(option.value) : String(option.value)\"\n :label=\"option.label\"\n :value=\"option.value\"\n :disabled=\"option.disabled\"\n />\n <template v-if=\"slots.prefix\" #prefix>\n <slot name=\"prefix\" />\n </template>\n <template v-if=\"slots.empty\" #empty>\n <slot name=\"empty\" />\n </template>\n <template v-if=\"slots.tag\" #tag>\n <slot name=\"tag\" />\n </template>\n <template v-if=\"slots.loading\" #loading>\n <slot name=\"loading\" />\n </template>\n <template v-if=\"slots.label\" #label=\"{ label, value }\">\n <slot name=\"label\" :label=\"label\" :value=\"value\" />\n </template>\n </ElSelect>\n</template>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"picker-select.mjs","names":[],"sources":["../../src/picker-select/picker-select.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Field } from '@silver-formily/core'\nimport type { PickerSelectOpenPicker, PickerSelectOption, PickerSelectProps } from './types'\nimport { isArr, isEqual, isValid } from '@silver-formily/shared'\nimport { useField } from '@silver-formily/vue'\nimport { ElOption, ElSelect } from 'element-plus'\nimport { computed, ref } from 'vue'\nimport { useCleanAttrs } from '../__builtins__'\n\ndefineOptions({\n name: 'FPickerSelect',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<PickerSelectProps>(), {\n options: () => [],\n cacheSelectedOptions: true,\n})\n\nconst emit = defineEmits<{\n (e: 'update:modelValue', value: any): void\n}>()\n\nconst slots = defineSlots<{\n empty?: () => any\n prefix?: () => any\n tag?: () => any\n loading?: () => any\n label?: () => any\n}>()\n\nconst ignoredOpenTriggerSelectors = ['.el-select__clear', '.el-tag__close']\n\nconst { props: selectProps } = useCleanAttrs()\nconst fieldRef = useField<Field>()\nconst selectRef = ref<InstanceType<typeof ElSelect>>()\nconst openingPicker = ref(false)\nconst selectedOptionCache = ref<PickerSelectOption[]>([])\nconst ignoreVisibleChangeUntil = ref(0)\n\nconst multiple = computed(() => Boolean(selectProps.value.multiple))\nconst currentValue = computed(() => selectProps.value.modelValue)\nconst baseOptions = computed<PickerSelectOption[]>(() => props.options ?? [])\n\nfunction isSameValue(left: any, right: any) {\n return isEqual(left, right)\n}\n\nfunction hasOption(optionList: PickerSelectOption[], option: PickerSelectOption) {\n return optionList.some(item => isSameValue(item.value, option.value))\n}\n\nfunction createFallbackOption(value: any): PickerSelectOption {\n return {\n label: value,\n value,\n }\n}\n\nconst normalizedValues = computed(() => {\n const value = currentValue.value\n if (multiple.value) {\n return isArr(value) ? value : []\n }\n return isValid(value) ? [value] : []\n})\n\nconst displayOptions = computed<PickerSelectOption[]>(() => {\n const merged = [...baseOptions.value]\n for (const item of selectedOptionCache.value) {\n if (!hasOption(merged, item)) {\n merged.push(item)\n }\n }\n for (const value of normalizedValues.value) {\n if (!merged.some(item => isSameValue(item.value, value))) {\n merged.push(createFallbackOption(value))\n }\n }\n return merged\n})\n\nfunction setValue(value: any) {\n fieldRef.value?.setValue?.(value)\n if (!fieldRef.value) {\n emit('update:modelValue', value)\n }\n}\n\nfunction cacheOptions(optionList: PickerSelectOption[]) {\n if (props.cacheSelectedOptions === false) {\n return\n }\n const merged = [...selectedOptionCache.value]\n for (const item of optionList) {\n const index = merged.findIndex(cacheItem => isSameValue(cacheItem.value, item.value))\n if (index >= 0) {\n merged[index] = item\n }\n else {\n merged.push(item)\n }\n }\n selectedOptionCache.value = merged\n}\n\nfunction clearValue() {\n setValue(multiple.value ? [] : undefined)\n}\n\nfunction shouldIgnoreOpenTrigger(target: EventTarget | null) {\n if (!(target instanceof HTMLElement)) {\n return false\n }\n return ignoredOpenTriggerSelectors.some(selector => target.closest(selector))\n}\n\nfunction ignoreCurrentVisibleChange() {\n ignoreVisibleChangeUntil.value = Date.now() + 200\n}\n\nasync function handleOpenPicker() {\n if (openingPicker.value || typeof props.openPicker !== 'function') {\n return\n }\n\n openingPicker.value = true\n\n try {\n const result = await Promise.resolve(\n (props.openPicker as PickerSelectOpenPicker)({\n field: fieldRef.value,\n dataSource: baseOptions.value,\n multiple: multiple.value,\n }),\n ).catch(() => undefined)\n\n if (multiple.value) {\n if (!isValid(result)) {\n return\n }\n const normalizedResult = isArr(result) ? result : [result]\n cacheOptions(normalizedResult)\n setValue(normalizedResult.map(item => item.value))\n return\n }\n\n if (!isValid(result)) {\n return\n }\n const normalizedResult = isArr(result) ? result[0] : result\n if (!normalizedResult) {\n return\n }\n cacheOptions([normalizedResult])\n setValue(normalizedResult.value)\n }\n finally {\n openingPicker.value = false\n }\n}\n\nfunction handleVisibleChange(visible: boolean) {\n if (!visible) {\n return\n }\n selectRef.value?.blur?.()\n if (Date.now() < ignoreVisibleChangeUntil.value) {\n ignoreVisibleChangeUntil.value = 0\n return\n }\n void handleOpenPicker()\n}\n\nfunction handleTriggerClick(event: MouseEvent) {\n if (typeof props.openPicker !== 'function' || selectProps.value.disabled) {\n return\n }\n if (shouldIgnoreOpenTrigger(event.target)) {\n ignoreCurrentVisibleChange()\n return\n }\n ignoreVisibleChangeUntil.value = 0\n}\n\nfunction handleRemoveTag(value: any) {\n if (!multiple.value) {\n return\n }\n setValue(normalizedValues.value.filter(item => !isSameValue(item, value)))\n}\n</script>\n\n<template>\n <ElSelect\n ref=\"selectRef\"\n v-bind=\"selectProps\"\n @click=\"handleTriggerClick\"\n @clear=\"clearValue\"\n @remove-tag=\"handleRemoveTag\"\n @visible-change=\"handleVisibleChange\"\n >\n <ElOption\n v-for=\"option of displayOptions\"\n :key=\"typeof option.value === 'object' ? JSON.stringify(option.value) : String(option.value)\"\n :label=\"option.label\"\n :value=\"option.value\"\n :disabled=\"option.disabled\"\n />\n <template v-if=\"slots.prefix\" #prefix>\n <slot name=\"prefix\" />\n </template>\n <template v-if=\"slots.empty\" #empty>\n <slot name=\"empty\" />\n </template>\n <template v-if=\"slots.tag\" #tag>\n <slot name=\"tag\" />\n </template>\n <template v-if=\"slots.loading\" #loading>\n <slot name=\"loading\" />\n </template>\n <template v-if=\"slots.label\" #label=\"{ label, value }\">\n <slot name=\"label\" :label=\"label\" :value=\"value\" />\n </template>\n </ElSelect>\n</template>\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cascader.mjs","names":[],"sources":["../../src/preview-text/cascader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Field } from '@formily/core'\nimport { useField } from '@silver-formily/vue'\nimport { ElSpace, ElTag, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextCascader',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue: any\n}>()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst fieldRef = useField<Field>()\nconst field = fieldRef.value\nconst { props: attrs } = useCleanAttrs()\nconst isMultiple = !!attrs.value.props?.multiple\nconst isShowAllLevels = attrs.value.showAllLevels ?? true\nconst dataSource: any[] = field?.dataSource ?? []\nconst { spaceProps, textProps, tagProps, placeholder } = usePreviewConfig()\n\nconst valueKey = attrs.value.props?.value || 'value'\nconst labelKey = attrs.value.props?.label || 'label'\n\nfunction findLabel(value: any, dataSource: any[]): any {\n const foundItem = dataSource.find(item => item?.[valueKey] === value)\n if (foundItem)\n return foundItem[labelKey]\n return dataSource\n .map(item => item?.children ? findLabel(value, item.children) : undefined)\n .find(label => label !== undefined)\n}\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <template v-if=\"!Array.isArray(props.modelValue)\">\n <ElText v-bind=\"textProps\">\n {{ placeholder }}\n </ElText>\n </template>\n <template v-else-if=\"isMultiple && Array.isArray(props.modelValue[0])\">\n <ElSpace v-bind=\"spaceProps\">\n <ElTag v-for=\"(item, key) of props.modelValue\" :key=\"key\" v-bind=\"tagProps\">\n <template v-if=\"isShowAllLevels\">\n {{ item.map(val => findLabel(val, dataSource) || placeholder).join(` ${attrs.separator ?? '/'} `) }}\n </template>\n <template v-else>\n {{ findLabel(item[item.length - 1], dataSource) || placeholder }}\n </template>\n </ElTag>\n </ElSpace>\n </template>\n <template v-else>\n <ElText v-bind=\"textProps\">\n <template v-if=\"isShowAllLevels\">\n {{ props.modelValue.map(val => findLabel(val, dataSource) || placeholder).join(` ${attrs.separator ?? '/'} `) }}\n </template>\n <template v-else>\n {{ findLabel(props.modelValue[props.modelValue.length - 1], dataSource) || placeholder }}\n </template>\n </ElText>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAYA,MAAM,QAAQ;EAGd,MAAM,YAAY,GAAG,YAAY;EAEjC,MAAM,QADW,UAAgB,CACV;EACvB,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,aAAa,CAAC,CAAC,MAAM,MAAM,OAAO;EACxC,MAAM,kBAAkB,MAAM,MAAM,iBAAiB;EACrD,MAAM,aAAoB,OAAO,cAAc,EAAC;EAChD,MAAM,EAAE,YAAY,WAAW,UAAU,gBAAgB,kBAAiB;EAE1E,MAAM,WAAW,MAAM,MAAM,OAAO,SAAS;EAC7C,MAAM,WAAW,MAAM,MAAM,OAAO,SAAS;EAE7C,SAAS,UAAU,OAAY,YAAwB;GACrD,MAAM,YAAY,WAAW,MAAK,SAAQ,OAAO,cAAc,MAAK;AACpE,OAAI,UACF,QAAO,UAAU;AACnB,UAAO,WACJ,KAAI,SAAQ,MAAM,WAAW,UAAU,OAAO,KAAK,SAAS,GAAG,KAAA,EAAS,CACxE,MAAK,UAAS,UAAU,KAAA,EAAS;;;uBAKpC,mBA4BM,OAAA,EA5BA,OAAK,eAAE,UAAS,EAAA,EAAA,CAAA,CACH,MAAM,QAAQ,MAAM,WAAU,IAAA,WAAA,EAC7C,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFO,MAAA,UAAS,CAAA,CAAA,EAAA;2BACN,CAAA,gBAAA,gBAAd,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA;;aAGG,cAAc,MAAM,QAAQ,MAAM,WAAU,GAAA,IAAA,WAAA,EAC/D,YASU,MAAA,QAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EATO,MAAA,WAAU,CAAA,CAAA,EAAA;2BACqB,EAAA,UAAA,KAAA,EAA9C,mBAOQ,UAAA,MAAA,WAPqB,MAAM,aAApB,MAAM,QAAG;yBAAxB,YAOQ,MAAA,MAAA,EAPR,WAOQ,EAP6C,KAAG,EAAA,EAAA,SAAA,MAAA,EAAU,MAAA,SAAQ,CAAA,EAAA;6BAG7D,CAFK,MAAA,gBAAe,IAAA,WAAA,EAA/B,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,KAAK,KAAI,QAAO,UAAU,KAAK,MAAA,WAAU,CAAA,IAAK,MAAA,YAAW,CAAA,CAAE,KAAI,IAAK,MAAA,MAAK,CAAC,aAAS,IAAA,GAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAExF,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,UAAU,KAAK,KAAK,SAAM,IAAO,MAAA,WAAU,CAAA,IAAK,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA;;;;;2BAMpE,YAOS,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAPO,MAAA,UAAS,CAAA,CAAA,EAAA;2BAGZ,CAFK,MAAA,gBAAe,IAAA,WAAA,EAA/B,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAM,WAAW,KAAI,QAAO,UAAU,KAAK,MAAA,WAAU,CAAA,IAAK,MAAA,YAAW,CAAA,CAAE,KAAI,IAAK,MAAA,MAAK,CAAC,aAAS,IAAA,GAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAEpG,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,UAAU,MAAM,WAAW,MAAM,WAAW,SAAM,IAAO,MAAA,WAAU,CAAA,IAAK,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"cascader.mjs","names":[],"sources":["../../src/preview-text/cascader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Field } from '@silver-formily/core'\nimport { useField } from '@silver-formily/vue'\nimport { ElSpace, ElTag, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextCascader',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue: any\n}>()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst fieldRef = useField<Field>()\nconst field = fieldRef.value\nconst { props: attrs } = useCleanAttrs()\nconst isMultiple = !!attrs.value.props?.multiple\nconst isShowAllLevels = attrs.value.showAllLevels ?? true\nconst dataSource: any[] = field?.dataSource ?? []\nconst { spaceProps, textProps, tagProps, placeholder } = usePreviewConfig()\n\nconst valueKey = attrs.value.props?.value || 'value'\nconst labelKey = attrs.value.props?.label || 'label'\n\nfunction findLabel(value: any, dataSource: any[]): any {\n const foundItem = dataSource.find(item => item?.[valueKey] === value)\n if (foundItem)\n return foundItem[labelKey]\n return dataSource\n .map(item => item?.children ? findLabel(value, item.children) : undefined)\n .find(label => label !== undefined)\n}\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <template v-if=\"!Array.isArray(props.modelValue)\">\n <ElText v-bind=\"textProps\">\n {{ placeholder }}\n </ElText>\n </template>\n <template v-else-if=\"isMultiple && Array.isArray(props.modelValue[0])\">\n <ElSpace v-bind=\"spaceProps\">\n <ElTag v-for=\"(item, key) of props.modelValue\" :key=\"key\" v-bind=\"tagProps\">\n <template v-if=\"isShowAllLevels\">\n {{ item.map(val => findLabel(val, dataSource) || placeholder).join(` ${attrs.separator ?? '/'} `) }}\n </template>\n <template v-else>\n {{ findLabel(item[item.length - 1], dataSource) || placeholder }}\n </template>\n </ElTag>\n </ElSpace>\n </template>\n <template v-else>\n <ElText v-bind=\"textProps\">\n <template v-if=\"isShowAllLevels\">\n {{ props.modelValue.map(val => findLabel(val, dataSource) || placeholder).join(` ${attrs.separator ?? '/'} `) }}\n </template>\n <template v-else>\n {{ findLabel(props.modelValue[props.modelValue.length - 1], dataSource) || placeholder }}\n </template>\n </ElText>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAYA,MAAM,QAAQ;EAGd,MAAM,YAAY,GAAG,YAAY;EAEjC,MAAM,QADW,UAAgB,CACV;EACvB,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,aAAa,CAAC,CAAC,MAAM,MAAM,OAAO;EACxC,MAAM,kBAAkB,MAAM,MAAM,iBAAiB;EACrD,MAAM,aAAoB,OAAO,cAAc,EAAC;EAChD,MAAM,EAAE,YAAY,WAAW,UAAU,gBAAgB,kBAAiB;EAE1E,MAAM,WAAW,MAAM,MAAM,OAAO,SAAS;EAC7C,MAAM,WAAW,MAAM,MAAM,OAAO,SAAS;EAE7C,SAAS,UAAU,OAAY,YAAwB;GACrD,MAAM,YAAY,WAAW,MAAK,SAAQ,OAAO,cAAc,MAAK;AACpE,OAAI,UACF,QAAO,UAAU;AACnB,UAAO,WACJ,KAAI,SAAQ,MAAM,WAAW,UAAU,OAAO,KAAK,SAAS,GAAG,KAAA,EAAS,CACxE,MAAK,UAAS,UAAU,KAAA,EAAS;;;uBAKpC,mBA4BM,OAAA,EA5BA,OAAK,eAAE,UAAS,EAAA,EAAA,CAAA,CACH,MAAM,QAAQ,MAAM,WAAU,IAAA,WAAA,EAC7C,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFO,MAAA,UAAS,CAAA,CAAA,EAAA;2BACN,CAAA,gBAAA,gBAAd,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA;;aAGG,cAAc,MAAM,QAAQ,MAAM,WAAU,GAAA,IAAA,WAAA,EAC/D,YASU,MAAA,QAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EATO,MAAA,WAAU,CAAA,CAAA,EAAA;2BACqB,EAAA,UAAA,KAAA,EAA9C,mBAOQ,UAAA,MAAA,WAPqB,MAAM,aAApB,MAAM,QAAG;yBAAxB,YAOQ,MAAA,MAAA,EAPR,WAOQ,EAP6C,KAAG,EAAA,EAAA,SAAA,MAAA,EAAU,MAAA,SAAQ,CAAA,EAAA;6BAG7D,CAFK,MAAA,gBAAe,IAAA,WAAA,EAA/B,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,KAAK,KAAI,QAAO,UAAU,KAAK,MAAA,WAAU,CAAA,IAAK,MAAA,YAAW,CAAA,CAAE,KAAI,IAAK,MAAA,MAAK,CAAC,aAAS,IAAA,GAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAExF,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,UAAU,KAAK,KAAK,SAAM,IAAO,MAAA,WAAU,CAAA,IAAK,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA;;;;;2BAMpE,YAOS,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAPO,MAAA,UAAS,CAAA,CAAA,EAAA;2BAGZ,CAFK,MAAA,gBAAe,IAAA,WAAA,EAA/B,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAM,WAAW,KAAI,QAAO,UAAU,KAAK,MAAA,WAAU,CAAA,IAAK,MAAA,YAAW,CAAA,CAAE,KAAI,IAAK,MAAA,MAAK,CAAC,aAAS,IAAA,GAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAEpG,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,UAAU,MAAM,WAAW,MAAM,WAAW,SAAM,IAAO,MAAA,WAAU,CAAA,IAAK,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA"}
|
|
@@ -3,7 +3,7 @@ import { stylePrefix } from "../__builtins__/configs/index.mjs";
|
|
|
3
3
|
import { usePreviewConfig } from "./utils.mjs";
|
|
4
4
|
import { ElSpace, ElText } from "element-plus";
|
|
5
5
|
import { Fragment, createBlock, createCommentVNode, createElementBlock, createTextVNode, createVNode, defineComponent, guardReactiveProps, mergeProps, normalizeClass, normalizeProps, normalizeStyle, openBlock, toDisplayString, unref, withCtx } from "vue";
|
|
6
|
-
import { isFn, isValid } from "@formily/shared";
|
|
6
|
+
import { isFn, isValid } from "@silver-formily/shared";
|
|
7
7
|
//#region src/preview-text/color-picker.vue
|
|
8
8
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
9
9
|
name: "FPreviewTextColorPicker",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color-picker.mjs","names":[],"sources":["../../src/preview-text/color-picker.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isFn, isValid } from '@formily/shared'\nimport { ElSpace, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextColorPicker',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\n\nconst { props: attrs } = useCleanAttrs()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst colorCls = `${prefixCls}__color`\nconst { spaceProps, textProps, placeholder } = usePreviewConfig()\n</script>\n\n<template>\n <ElSpace :class=\"[prefixCls, colorCls]\" v-bind=\"spaceProps\">\n <div\n v-if=\"isValid(props.modelValue)\"\n :class=\"`${colorCls}-swatch`\"\n :style=\"{ backgroundColor: props.modelValue }\"\n />\n <ElText v-bind=\"textProps\">\n <template v-if=\"isFn(attrs.formatter)\">\n {{ attrs.formatter(props.modelValue) }}\n </template>\n <template v-else-if=\"isValid(props.modelValue)\">\n {{ props.modelValue }}\n </template>\n <template v-else>\n {{ placeholder }}\n </template>\n </ElText>\n </ElSpace>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAWA,MAAM,QAAQ;EAId,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,WAAW,GAAG,UAAU;EAC9B,MAAM,EAAE,YAAY,WAAW,gBAAgB,kBAAiB;;uBAI9D,YAiBU,MAAA,QAAA,EAjBV,WAiBU,EAjBA,OAAK,CAAG,WAAW,SAAQ,EAAA,EAAW,MAAA,WAAU,CAAA,EAAA;2BAKtD,CAHM,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EADhC,mBAIE,OAAA;;KAFC,OAAK,eAAA,GAAK,SAAQ,SAAA;KAClB,OAAK,eAAA,EAAA,iBAAqB,MAAM,YAAU,CAAA;qDAE7C,YAUS,MAAA,OAAA,EAAA,eAAA,mBAVO,MAAA,UAAS,CAAA,CAAA,EAAA;4BAGZ,CAFK,MAAA,KAAI,CAAC,MAAA,MAAK,CAAC,UAAS,IAAA,WAAA,EAApC,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,MAAK,CAAC,UAAU,MAAM,WAAU,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,IAEhB,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EAA7C,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAM,WAAU,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAErB,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"color-picker.mjs","names":[],"sources":["../../src/preview-text/color-picker.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isFn, isValid } from '@silver-formily/shared'\nimport { ElSpace, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextColorPicker',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\n\nconst { props: attrs } = useCleanAttrs()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst colorCls = `${prefixCls}__color`\nconst { spaceProps, textProps, placeholder } = usePreviewConfig()\n</script>\n\n<template>\n <ElSpace :class=\"[prefixCls, colorCls]\" v-bind=\"spaceProps\">\n <div\n v-if=\"isValid(props.modelValue)\"\n :class=\"`${colorCls}-swatch`\"\n :style=\"{ backgroundColor: props.modelValue }\"\n />\n <ElText v-bind=\"textProps\">\n <template v-if=\"isFn(attrs.formatter)\">\n {{ attrs.formatter(props.modelValue) }}\n </template>\n <template v-else-if=\"isValid(props.modelValue)\">\n {{ props.modelValue }}\n </template>\n <template v-else>\n {{ placeholder }}\n </template>\n </ElText>\n </ElSpace>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAWA,MAAM,QAAQ;EAId,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,WAAW,GAAG,UAAU;EAC9B,MAAM,EAAE,YAAY,WAAW,gBAAgB,kBAAiB;;uBAI9D,YAiBU,MAAA,QAAA,EAjBV,WAiBU,EAjBA,OAAK,CAAG,WAAW,SAAQ,EAAA,EAAW,MAAA,WAAU,CAAA,EAAA;2BAKtD,CAHM,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EADhC,mBAIE,OAAA;;KAFC,OAAK,eAAA,GAAK,SAAQ,SAAA;KAClB,OAAK,eAAA,EAAA,iBAAqB,MAAM,YAAU,CAAA;qDAE7C,YAUS,MAAA,OAAA,EAAA,eAAA,mBAVO,MAAA,UAAS,CAAA,CAAA,EAAA;4BAGZ,CAFK,MAAA,KAAI,CAAC,MAAA,MAAK,CAAC,UAAS,IAAA,WAAA,EAApC,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,MAAK,CAAC,UAAU,MAAM,WAAU,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,IAEhB,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EAA7C,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAM,WAAU,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAErB,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA"}
|
|
@@ -3,7 +3,7 @@ import { stylePrefix } from "../__builtins__/configs/index.mjs";
|
|
|
3
3
|
import { usePreviewConfig } from "./utils.mjs";
|
|
4
4
|
import { ElSpace, ElText } from "element-plus";
|
|
5
5
|
import { Fragment, createBlock, createCommentVNode, createElementBlock, createTextVNode, createVNode, defineComponent, guardReactiveProps, mergeProps, normalizeProps, openBlock, renderSlot, toDisplayString, unref, useSlots, withCtx } from "vue";
|
|
6
|
-
import { isFn, isValid } from "@formily/shared";
|
|
6
|
+
import { isFn, isValid } from "@silver-formily/shared";
|
|
7
7
|
//#region src/preview-text/input.vue
|
|
8
8
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
9
9
|
name: "FPreviewTextInput",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.mjs","names":[],"sources":["../../src/preview-text/input.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isFn, isValid } from '@formily/shared'\nimport { ElSpace, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextInput',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\n\nconst slots = defineSlots<{\n prepend?: () => any\n prefix?: () => any\n suffix?: () => any\n append?: () => any\n}>()\nconst { props: attrs } = useCleanAttrs()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst { spaceProps, textProps, placeholder } = usePreviewConfig()\n</script>\n\n<template>\n <ElSpace :class=\"prefixCls\" v-bind=\"spaceProps\">\n <slot v-if=\"slots.prepend\" name=\"prepend\" />\n <slot v-if=\"slots.prefix\" name=\"prefix\" />\n <ElText v-bind=\"textProps\">\n <template v-if=\"isFn(attrs.formatter)\">\n {{ attrs.formatter(props.modelValue) }}\n </template>\n <template v-else-if=\"isValid(props.modelValue)\">\n {{ props.modelValue === '' ? ' ' : props.modelValue }}\n </template>\n <template v-else>\n {{ placeholder }}\n </template>\n </ElText>\n <slot v-if=\"slots.suffix\" name=\"suffix\" />\n <slot v-if=\"slots.append\" name=\"append\" />\n </ElSpace>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAWA,MAAM,QAAQ;EAId,MAAM,QAAQ,UAAA;EAMd,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,EAAE,YAAY,WAAW,gBAAgB,kBAAiB;;uBAI9D,YAgBU,MAAA,QAAA,EAhBV,WAgBU,EAhBA,OAAO,WAAS,EAAU,MAAA,WAAU,CAAA,EAAA;2BACA;KAAhC,MAAM,UAAlB,WAA4C,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA,GAAA,mBAAA,QAAA,KAAA;KAChC,MAAM,SAAlB,WAA0C,KAAA,QAAA,UAAA,EAAA,KAAA,GAAA,CAAA,GAAA,mBAAA,QAAA,KAAA;KAC1C,YAUS,MAAA,OAAA,EAAA,eAAA,mBAVO,MAAA,UAAS,CAAA,CAAA,EAAA;6BAGZ,CAFK,MAAA,KAAI,CAAC,MAAA,MAAK,CAAC,UAAS,IAAA,WAAA,EAApC,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,MAAK,CAAC,UAAU,MAAM,WAAU,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,IAEhB,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EAA7C,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAM,eAAU,KAAA,SAAgB,MAAM,WAAU,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAErD,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA;;;KAGN,MAAM,SAAlB,WAA0C,KAAA,QAAA,UAAA,EAAA,KAAA,GAAA,CAAA,GAAA,mBAAA,QAAA,KAAA;KAC9B,MAAM,SAAlB,WAA0C,KAAA,QAAA,UAAA,EAAA,KAAA,GAAA,CAAA,GAAA,mBAAA,QAAA,KAAA"}
|
|
1
|
+
{"version":3,"file":"input.mjs","names":[],"sources":["../../src/preview-text/input.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isFn, isValid } from '@silver-formily/shared'\nimport { ElSpace, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextInput',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\n\nconst slots = defineSlots<{\n prepend?: () => any\n prefix?: () => any\n suffix?: () => any\n append?: () => any\n}>()\nconst { props: attrs } = useCleanAttrs()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst { spaceProps, textProps, placeholder } = usePreviewConfig()\n</script>\n\n<template>\n <ElSpace :class=\"prefixCls\" v-bind=\"spaceProps\">\n <slot v-if=\"slots.prepend\" name=\"prepend\" />\n <slot v-if=\"slots.prefix\" name=\"prefix\" />\n <ElText v-bind=\"textProps\">\n <template v-if=\"isFn(attrs.formatter)\">\n {{ attrs.formatter(props.modelValue) }}\n </template>\n <template v-else-if=\"isValid(props.modelValue)\">\n {{ props.modelValue === '' ? ' ' : props.modelValue }}\n </template>\n <template v-else>\n {{ placeholder }}\n </template>\n </ElText>\n <slot v-if=\"slots.suffix\" name=\"suffix\" />\n <slot v-if=\"slots.append\" name=\"append\" />\n </ElSpace>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAWA,MAAM,QAAQ;EAId,MAAM,QAAQ,UAAA;EAMd,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,EAAE,YAAY,WAAW,gBAAgB,kBAAiB;;uBAI9D,YAgBU,MAAA,QAAA,EAhBV,WAgBU,EAhBA,OAAO,WAAS,EAAU,MAAA,WAAU,CAAA,EAAA;2BACA;KAAhC,MAAM,UAAlB,WAA4C,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA,GAAA,mBAAA,QAAA,KAAA;KAChC,MAAM,SAAlB,WAA0C,KAAA,QAAA,UAAA,EAAA,KAAA,GAAA,CAAA,GAAA,mBAAA,QAAA,KAAA;KAC1C,YAUS,MAAA,OAAA,EAAA,eAAA,mBAVO,MAAA,UAAS,CAAA,CAAA,EAAA;6BAGZ,CAFK,MAAA,KAAI,CAAC,MAAA,MAAK,CAAC,UAAS,IAAA,WAAA,EAApC,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,MAAK,CAAC,UAAU,MAAM,WAAU,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,IAEhB,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EAA7C,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAM,eAAU,KAAA,SAAgB,MAAM,WAAU,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAErD,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA;;;KAGN,MAAM,SAAlB,WAA0C,KAAA,QAAA,UAAA,EAAA,KAAA,GAAA,CAAA,GAAA,mBAAA,QAAA,KAAA;KAC9B,MAAM,SAAlB,WAA0C,KAAA,QAAA,UAAA,EAAA,KAAA,GAAA,CAAA,GAAA,mBAAA,QAAA,KAAA"}
|
|
@@ -3,7 +3,7 @@ import { stylePrefix } from "../__builtins__/configs/index.mjs";
|
|
|
3
3
|
import { usePreviewConfig } from "./utils.mjs";
|
|
4
4
|
import { ElRate, ElText } from "element-plus";
|
|
5
5
|
import { createBlock, createElementBlock, createTextVNode, defineComponent, mergeProps, normalizeClass, normalizeProps, openBlock, toDisplayString, unref, withCtx } from "vue";
|
|
6
|
-
import { isValid } from "@formily/shared";
|
|
6
|
+
import { isValid } from "@silver-formily/shared";
|
|
7
7
|
//#region src/preview-text/rate.vue
|
|
8
8
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
9
9
|
name: "FPreviewTextRate",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rate.mjs","names":[],"sources":["../../src/preview-text/rate.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isValid } from '@formily/shared'\nimport { ElRate, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextRate',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\n\nconst { props: attrs } = useCleanAttrs()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst { textProps, placeholder } = usePreviewConfig()\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <ElText v-if=\"!isValid(props.modelValue)\" v-bind=\"textProps\">\n {{ placeholder }}\n </ElText>\n <ElRate\n v-else\n v-bind=\"attrs\"\n :model-value=\"props.modelValue\"\n :disabled=\"true\"\n />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAWA,MAAM,QAAQ;EAId,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,EAAE,WAAW,gBAAgB,kBAAiB;;uBAIlD,mBAUM,OAAA,EAVA,OAAK,eAAE,UAAS,EAAA,EAAA,CAAA,CACL,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EAAvC,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFyC,MAAA,UAAS,CAAA,CAAA,EAAA;2BACxC,CAAA,gBAAA,gBAAd,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA;;2BAEhB,YAKE,MAAA,OAAA,EALF,WAKE,EAAA,KAAA,GAAA,EAHQ,MAAA,MAAK,EAAA;IACZ,eAAa,MAAM;IACnB,UAAU"}
|
|
1
|
+
{"version":3,"file":"rate.mjs","names":[],"sources":["../../src/preview-text/rate.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isValid } from '@silver-formily/shared'\nimport { ElRate, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextRate',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\n\nconst { props: attrs } = useCleanAttrs()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst { textProps, placeholder } = usePreviewConfig()\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <ElText v-if=\"!isValid(props.modelValue)\" v-bind=\"textProps\">\n {{ placeholder }}\n </ElText>\n <ElRate\n v-else\n v-bind=\"attrs\"\n :model-value=\"props.modelValue\"\n :disabled=\"true\"\n />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAWA,MAAM,QAAQ;EAId,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,EAAE,WAAW,gBAAgB,kBAAiB;;uBAIlD,mBAUM,OAAA,EAVA,OAAK,eAAE,UAAS,EAAA,EAAA,CAAA,CACL,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EAAvC,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFyC,MAAA,UAAS,CAAA,CAAA,EAAA;2BACxC,CAAA,gBAAA,gBAAd,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA;;2BAEhB,YAKE,MAAA,OAAA,EALF,WAKE,EAAA,KAAA,GAAA,EAHQ,MAAA,MAAK,EAAA;IACZ,eAAa,MAAM;IACnB,UAAU"}
|
|
@@ -5,7 +5,7 @@ import { ElSpace, ElTag, ElText } from "element-plus";
|
|
|
5
5
|
import { formilyComputed } from "@silver-formily/reactive-vue";
|
|
6
6
|
import { Fragment, createBlock, createElementBlock, createTextVNode, defineComponent, mergeProps, normalizeClass, normalizeProps, openBlock, renderList, toDisplayString, unref, withCtx } from "vue";
|
|
7
7
|
import { useField } from "@silver-formily/vue";
|
|
8
|
-
import { isValid } from "@formily/shared";
|
|
8
|
+
import { isValid } from "@silver-formily/shared";
|
|
9
9
|
//#region src/preview-text/select.vue
|
|
10
10
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
11
11
|
name: "FPreviewTextSelect",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.mjs","names":[],"sources":["../../src/preview-text/select.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Field } from '@formily/core'\nimport {
|
|
1
|
+
{"version":3,"file":"select.mjs","names":[],"sources":["../../src/preview-text/select.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Field } from '@silver-formily/core'\nimport { formilyComputed } from '@silver-formily/reactive-vue'\nimport { isValid } from '@silver-formily/shared'\nimport { useField } from '@silver-formily/vue'\nimport { ElSpace, ElTag, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextSelect',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\n\nconst prefixCls = `${stylePrefix}-preview-text`\n\nconst fieldRef = useField<Field>()\nconst { props: attrs } = useCleanAttrs()\nconst { spaceProps, textProps, tagProps, placeholder } = usePreviewConfig()\nconst dataSource = formilyComputed(() => fieldRef.value?.dataSource ?? [])\n\nfunction getOptionLabel(value: any) {\n return dataSource.value.find(i => i.value === value)?.label ?? value\n}\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <template v-if=\"!isValid(props.modelValue)\">\n <ElText v-bind=\"textProps\">\n {{ placeholder }}\n </ElText>\n </template>\n <template v-else-if=\"!attrs.multiple\">\n <ElText v-bind=\"textProps\">\n {{ getOptionLabel(props.modelValue) }}\n </ElText>\n </template>\n <ElSpace v-else v-bind=\"spaceProps\">\n <ElTag v-for=\"(item, key) of props.modelValue\" :key=\"key\" v-bind=\"tagProps\">\n {{ getOptionLabel(item) }}\n </ElTag>\n </ElSpace>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;EAcA,MAAM,QAAQ;EAId,MAAM,YAAY,GAAG,YAAY;EAEjC,MAAM,WAAW,UAAgB;EACjC,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,EAAE,YAAY,WAAW,UAAU,gBAAgB,kBAAiB;EAC1E,MAAM,aAAa,sBAAsB,SAAS,OAAO,cAAc,EAAE,CAAA;EAEzE,SAAS,eAAe,OAAY;AAClC,UAAO,WAAW,MAAM,MAAK,MAAK,EAAE,UAAU,MAAM,EAAE,SAAS;;;uBAK/D,mBAgBM,OAAA,EAhBA,OAAK,eAAE,UAAS,EAAA,EAAA,CAAA,CACH,MAAA,QAAO,CAAC,MAAM,WAAU,IAAA,WAAA,EACvC,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFO,MAAA,UAAS,CAAA,CAAA,EAAA;2BACN,CAAA,gBAAA,gBAAd,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA;;cAGI,MAAA,MAAK,CAAC,YAAA,WAAA,EAC1B,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFO,MAAA,UAAS,CAAA,CAAA,EAAA;2BACe,CAAA,gBAAA,gBAAnC,eAAe,MAAM,WAAU,CAAA,EAAA,EAAA,CAAA,CAAA;;2BAGtC,YAIU,MAAA,QAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAJc,MAAA,WAAU,CAAA,CAAA,EAAA;2BACc,EAAA,UAAA,KAAA,EAA9C,mBAEQ,UAAA,MAAA,WAFqB,MAAM,aAApB,MAAM,QAAG;yBAAxB,YAEQ,MAAA,MAAA,EAFR,WAEQ,EAF6C,KAAG,EAAA,EAAA,SAAA,MAAA,EAAU,MAAA,SAAQ,CAAA,EAAA;6BAC9C,CAAA,gBAAA,gBAAvB,eAAe,KAAI,CAAA,EAAA,EAAA,CAAA,CAAA"}
|
|
@@ -3,7 +3,7 @@ import { stylePrefix } from "../__builtins__/configs/index.mjs";
|
|
|
3
3
|
import { usePreviewConfig } from "./utils.mjs";
|
|
4
4
|
import { ElText, dayjs } from "element-plus";
|
|
5
5
|
import { createBlock, createElementBlock, createTextVNode, defineComponent, mergeProps, normalizeClass, normalizeProps, openBlock, toDisplayString, unref, withCtx } from "vue";
|
|
6
|
-
import { isArr } from "@formily/shared";
|
|
6
|
+
import { isArr } from "@silver-formily/shared";
|
|
7
7
|
//#region src/preview-text/time-picker.vue
|
|
8
8
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
9
9
|
name: "FPreviewTextTimePicker",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-picker.mjs","names":[],"sources":["../../src/preview-text/time-picker.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isArr } from '@formily/shared'\nimport { dayjs, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextTimePicker',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\nconst { props: attrs } = useCleanAttrs()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst { textProps, placeholder } = usePreviewConfig()\nconst format = attrs.value.format || 'HH:mm:ss'\nconst parseFormat = attrs.value.valueFormat || 'HH:mm:ss'\n\nfunction formatTimeValue(value: any): string | void {\n if (!value)\n return\n if (value instanceof Date) {\n return dayjs(value).format(format)\n }\n if (typeof value === 'string') {\n return dayjs(value, parseFormat).format(format)\n }\n}\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <template v-if=\"isArr(props.modelValue)\">\n <ElText v-bind=\"textProps\">\n {{ formatTimeValue(props.modelValue[0]) || placeholder }}\n {{ attrs.rangeSeparator ?? '~' }}\n {{ formatTimeValue(props.modelValue[1]) || placeholder }}\n </ElText>\n </template>\n <template v-else>\n <ElText v-bind=\"textProps\">\n {{ formatTimeValue(props.modelValue) || placeholder }}\n </ElText>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAWA,MAAM,QAAQ;EAGd,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,EAAE,WAAW,gBAAgB,kBAAiB;EACpD,MAAM,SAAS,MAAM,MAAM,UAAU;EACrC,MAAM,cAAc,MAAM,MAAM,eAAe;EAE/C,SAAS,gBAAgB,OAA2B;AAClD,OAAI,CAAC,MACH;AACF,OAAI,iBAAiB,KACnB,QAAO,MAAM,MAAM,CAAC,OAAO,OAAM;AAEnC,OAAI,OAAO,UAAU,SACnB,QAAO,MAAM,OAAO,YAAY,CAAC,OAAO,OAAM;;;uBAMhD,mBAaM,OAAA,EAbA,OAAK,eAAE,UAAS,EAAA,EAAA,CACJ,MAAA,MAAK,CAAC,MAAM,WAAU,IAAA,WAAA,EACpC,YAIS,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAJO,MAAA,UAAS,CAAA,CAAA,EAAA;2BACkC,CAAA,gBAAA,gBAAtD,gBAAgB,MAAM,WAAU,GAAA,IAAQ,MAAA,YAAW,CAAA,GAAG,MACzD,gBAAG,MAAA,MAAK,CAAC,kBAAc,IAAA,GAAU,MACjC,gBAAG,gBAAgB,MAAM,WAAU,GAAA,IAAQ,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA;;2BAIxD,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFO,MAAA,UAAS,CAAA,CAAA,EAAA;2BAC+B,CAAA,gBAAA,gBAAnD,gBAAgB,MAAM,WAAU,IAAK,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"time-picker.mjs","names":[],"sources":["../../src/preview-text/time-picker.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isArr } from '@silver-formily/shared'\nimport { dayjs, ElText } from 'element-plus'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTextTimePicker',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n modelValue?: any\n}>()\nconst { props: attrs } = useCleanAttrs()\nconst prefixCls = `${stylePrefix}-preview-text`\nconst { textProps, placeholder } = usePreviewConfig()\nconst format = attrs.value.format || 'HH:mm:ss'\nconst parseFormat = attrs.value.valueFormat || 'HH:mm:ss'\n\nfunction formatTimeValue(value: any): string | void {\n if (!value)\n return\n if (value instanceof Date) {\n return dayjs(value).format(format)\n }\n if (typeof value === 'string') {\n return dayjs(value, parseFormat).format(format)\n }\n}\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <template v-if=\"isArr(props.modelValue)\">\n <ElText v-bind=\"textProps\">\n {{ formatTimeValue(props.modelValue[0]) || placeholder }}\n {{ attrs.rangeSeparator ?? '~' }}\n {{ formatTimeValue(props.modelValue[1]) || placeholder }}\n </ElText>\n </template>\n <template v-else>\n <ElText v-bind=\"textProps\">\n {{ formatTimeValue(props.modelValue) || placeholder }}\n </ElText>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAWA,MAAM,QAAQ;EAGd,MAAM,EAAE,OAAO,UAAU,eAAc;EACvC,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,EAAE,WAAW,gBAAgB,kBAAiB;EACpD,MAAM,SAAS,MAAM,MAAM,UAAU;EACrC,MAAM,cAAc,MAAM,MAAM,eAAe;EAE/C,SAAS,gBAAgB,OAA2B;AAClD,OAAI,CAAC,MACH;AACF,OAAI,iBAAiB,KACnB,QAAO,MAAM,MAAM,CAAC,OAAO,OAAM;AAEnC,OAAI,OAAO,UAAU,SACnB,QAAO,MAAM,OAAO,YAAY,CAAC,OAAO,OAAM;;;uBAMhD,mBAaM,OAAA,EAbA,OAAK,eAAE,UAAS,EAAA,EAAA,CACJ,MAAA,MAAK,CAAC,MAAM,WAAU,IAAA,WAAA,EACpC,YAIS,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAJO,MAAA,UAAS,CAAA,CAAA,EAAA;2BACkC,CAAA,gBAAA,gBAAtD,gBAAgB,MAAM,WAAU,GAAA,IAAQ,MAAA,YAAW,CAAA,GAAG,MACzD,gBAAG,MAAA,MAAK,CAAC,kBAAc,IAAA,GAAU,MACjC,gBAAG,gBAAgB,MAAM,WAAU,GAAA,IAAQ,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA;;2BAIxD,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFO,MAAA,UAAS,CAAA,CAAA,EAAA;2BAC+B,CAAA,gBAAA,gBAAnD,gBAAgB,MAAM,WAAU,IAAK,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.mjs","names":[],"sources":["../../src/preview-text/tree.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ArrayField } from '@formily/core'\nimport { useField } from '@silver-formily/vue'\nimport { ElScrollbar, ElText, ElTree } from 'element-plus'\nimport { computed } from 'vue'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { getSelectedPath } from '../tree/utils'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTree',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<{\n nodeKey: string\n modelValue?: any\n valueType?: string\n data?: any[]\n props?: {\n children?: string\n label?: string\n disabled?: string\n }\n height?: number\n maxHeight?: number\n}>(), {\n valueType: 'all',\n props: () => ({\n children: 'children',\n label: 'label',\n disabled: 'disabled',\n }),\n})\n\nconst prefixCls = `${stylePrefix}-preview-tree`\nconst fieldRef = useField<ArrayField>()\nconst { props: attrs } = useCleanAttrs(['modelValue', 'onUpdate:modelValue'])\nconst { textProps, placeholder } = usePreviewConfig()\n\nconst dataSource = computed(() => {\n return fieldRef.value.dataSource ?? props.data ?? []\n})\n\nconst resolvedValue = computed(() => {\n if (props.modelValue !== undefined)\n return props.modelValue\n return fieldRef.value?.value\n})\n\nconst previewData = computed(() => {\n if (!resolvedValue.value || !Array.isArray(resolvedValue.value) || resolvedValue.value.length === 0) {\n return []\n }\n switch (props.valueType) {\n case 'path': {\n return resolvedValue.value\n }\n default: {\n const selectedPath = getSelectedPath(dataSource.value, resolvedValue.value, props.nodeKey, props.props)\n return selectedPath\n }\n }\n})\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <ElScrollbar\n v-if=\"previewData.length > 0\"\n :height=\"props.height\"\n :max-height=\"props.maxHeight\"\n >\n <ElTree\n :data=\"previewData\"\n :node-key=\"props.nodeKey\"\n :props=\"props.props\"\n :default-expand-all=\"true\"\n v-bind=\"attrs\"\n />\n </ElScrollbar>\n <ElText v-else v-bind=\"textProps\">\n {{ placeholder }}\n </ElText>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAcA,MAAM,QAAQ;EAqBd,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,WAAW,UAAqB;EACtC,MAAM,EAAE,OAAO,UAAU,cAAc,CAAC,cAAc,sBAAsB,CAAA;EAC5E,MAAM,EAAE,WAAW,gBAAgB,kBAAiB;EAEpD,MAAM,aAAa,eAAe;AAChC,UAAO,SAAS,MAAM,cAAc,MAAM,QAAQ,EAAC;IACpD;EAED,MAAM,gBAAgB,eAAe;AACnC,OAAI,MAAM,eAAe,KAAA,EACvB,QAAO,MAAM;AACf,UAAO,SAAS,OAAO;IACxB;EAED,MAAM,cAAc,eAAe;AACjC,OAAI,CAAC,cAAc,SAAS,CAAC,MAAM,QAAQ,cAAc,MAAM,IAAI,cAAc,MAAM,WAAW,EAChG,QAAO,EAAC;AAEV,WAAQ,MAAM,WAAd;IACE,KAAK,OACH,QAAO,cAAc;IAEvB,QAEE,QADqB,gBAAgB,WAAW,OAAO,cAAc,OAAO,MAAM,SAAS,MAAM,MAAK;;IAI3G;;uBAIC,mBAiBM,OAAA,EAjBA,OAAK,eAAE,UAAS,EAAA,EAAA,CAEZ,YAAA,MAAY,SAAM,KAAA,WAAA,EAD1B,YAYc,MAAA,YAAA,EAAA;;IAVX,QAAQ,MAAM;IACd,cAAY,MAAM;;2BAQjB,CANF,YAME,MAAA,OAAA,EANF,WAME;KALC,MAAM,YAAA;KACN,YAAU,MAAM;KAChB,OAAO,MAAM;KACb,sBAAoB;OACb,MAAA,MAAK,CAAA,EAAA,MAAA,IAAA;KAAA;KAAA;KAAA;KAAA,CAAA,CAAA,CAAA;;oDAGjB,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFc,MAAA,UAAS,CAAA,CAAA,EAAA;2BACb,CAAA,gBAAA,gBAAd,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"tree.mjs","names":[],"sources":["../../src/preview-text/tree.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ArrayField } from '@silver-formily/core'\nimport { useField } from '@silver-formily/vue'\nimport { ElScrollbar, ElText, ElTree } from 'element-plus'\nimport { computed } from 'vue'\nimport { stylePrefix, useCleanAttrs } from '../__builtins__'\nimport { getSelectedPath } from '../tree/utils'\nimport { usePreviewConfig } from './utils'\n\ndefineOptions({\n name: 'FPreviewTree',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<{\n nodeKey: string\n modelValue?: any\n valueType?: string\n data?: any[]\n props?: {\n children?: string\n label?: string\n disabled?: string\n }\n height?: number\n maxHeight?: number\n}>(), {\n valueType: 'all',\n props: () => ({\n children: 'children',\n label: 'label',\n disabled: 'disabled',\n }),\n})\n\nconst prefixCls = `${stylePrefix}-preview-tree`\nconst fieldRef = useField<ArrayField>()\nconst { props: attrs } = useCleanAttrs(['modelValue', 'onUpdate:modelValue'])\nconst { textProps, placeholder } = usePreviewConfig()\n\nconst dataSource = computed(() => {\n return fieldRef.value.dataSource ?? props.data ?? []\n})\n\nconst resolvedValue = computed(() => {\n if (props.modelValue !== undefined)\n return props.modelValue\n return fieldRef.value?.value\n})\n\nconst previewData = computed(() => {\n if (!resolvedValue.value || !Array.isArray(resolvedValue.value) || resolvedValue.value.length === 0) {\n return []\n }\n switch (props.valueType) {\n case 'path': {\n return resolvedValue.value\n }\n default: {\n const selectedPath = getSelectedPath(dataSource.value, resolvedValue.value, props.nodeKey, props.props)\n return selectedPath\n }\n }\n})\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <ElScrollbar\n v-if=\"previewData.length > 0\"\n :height=\"props.height\"\n :max-height=\"props.maxHeight\"\n >\n <ElTree\n :data=\"previewData\"\n :node-key=\"props.nodeKey\"\n :props=\"props.props\"\n :default-expand-all=\"true\"\n v-bind=\"attrs\"\n />\n </ElScrollbar>\n <ElText v-else v-bind=\"textProps\">\n {{ placeholder }}\n </ElText>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAcA,MAAM,QAAQ;EAqBd,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,WAAW,UAAqB;EACtC,MAAM,EAAE,OAAO,UAAU,cAAc,CAAC,cAAc,sBAAsB,CAAA;EAC5E,MAAM,EAAE,WAAW,gBAAgB,kBAAiB;EAEpD,MAAM,aAAa,eAAe;AAChC,UAAO,SAAS,MAAM,cAAc,MAAM,QAAQ,EAAC;IACpD;EAED,MAAM,gBAAgB,eAAe;AACnC,OAAI,MAAM,eAAe,KAAA,EACvB,QAAO,MAAM;AACf,UAAO,SAAS,OAAO;IACxB;EAED,MAAM,cAAc,eAAe;AACjC,OAAI,CAAC,cAAc,SAAS,CAAC,MAAM,QAAQ,cAAc,MAAM,IAAI,cAAc,MAAM,WAAW,EAChG,QAAO,EAAC;AAEV,WAAQ,MAAM,WAAd;IACE,KAAK,OACH,QAAO,cAAc;IAEvB,QAEE,QADqB,gBAAgB,WAAW,OAAO,cAAc,OAAO,MAAM,SAAS,MAAM,MAAK;;IAI3G;;uBAIC,mBAiBM,OAAA,EAjBA,OAAK,eAAE,UAAS,EAAA,EAAA,CAEZ,YAAA,MAAY,SAAM,KAAA,WAAA,EAD1B,YAYc,MAAA,YAAA,EAAA;;IAVX,QAAQ,MAAM;IACd,cAAY,MAAM;;2BAQjB,CANF,YAME,MAAA,OAAA,EANF,WAME;KALC,MAAM,YAAA;KACN,YAAU,MAAM;KAChB,OAAO,MAAM;KACb,sBAAoB;OACb,MAAA,MAAK,CAAA,EAAA,MAAA,IAAA;KAAA;KAAA;KAAA;KAAA,CAAA,CAAA,CAAA;;oDAGjB,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAFc,MAAA,UAAS,CAAA,CAAA,EAAA;2BACb,CAAA,gBAAA,gBAAd,MAAA,YAAW,CAAA,EAAA,EAAA,CAAA,CAAA"}
|
package/esm/query-form/hooks.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { mergeQueryFormComponents } from "./default-components.mjs";
|
|
2
2
|
import { computed, toValue } from "vue";
|
|
3
3
|
import { createSchemaField } from "@silver-formily/vue";
|
|
4
|
-
import { isFn } from "@formily/shared";
|
|
4
|
+
import { isFn } from "@silver-formily/shared";
|
|
5
5
|
//#region src/query-form/hooks.ts
|
|
6
6
|
function resolveExternalForm(form) {
|
|
7
7
|
if (isFn(form)) return form();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.mjs","names":[],"sources":["../../src/query-form/hooks.ts"],"sourcesContent":["import type { Form } from '@formily/core'\nimport type { ISchema } from '@formily/json-schema'\nimport type { Component, ComputedRef, MaybeRefOrGetter, Slots } from 'vue'\nimport { isFn } from '@formily/shared'\nimport { createSchemaField } from '@silver-formily/vue'\nimport { computed, toValue } from 'vue'\nimport { mergeQueryFormComponents } from './default-components'\n\nfunction resolveExternalForm(form: unknown): Form | undefined {\n if (isFn(form))\n return (form as () => Form | undefined)()\n return form as Form | undefined\n}\n\ninterface UseQueryFormFormOptions {\n formProps: MaybeRefOrGetter<{ form?: unknown }>\n fallbackForm?: MaybeRefOrGetter<Form | undefined>\n}\n\nexport function useQueryFormForm(options: UseQueryFormFormOptions) {\n const externalForm = computed<Form | undefined>(() => resolveExternalForm(toValue(options.formProps)?.form))\n const activeForm = computed<Form | undefined>(() => externalForm.value ?? toValue(options.fallbackForm))\n\n return {\n externalForm,\n activeForm,\n }\n}\n\ninterface UseQueryFormSchemaFieldOptions {\n slots: Slots\n schema: ComputedRef<ISchema | undefined>\n schemaField: ComputedRef<Component | undefined>\n components: ComputedRef<Record<string, Component> | undefined>\n scope?: ComputedRef<Record<string, any> | undefined>\n}\n\nexport function useQueryFormSchemaField(options: UseQueryFormSchemaFieldOptions) {\n const hasDefaultSlot = computed(() => Boolean(options.slots.default))\n const mergedComponents = computed(() => mergeQueryFormComponents(options.components.value))\n const schemaField = computed<Component | null>(() => {\n if (hasDefaultSlot.value || !options.schema.value)\n return null\n return options.schemaField.value ?? createSchemaField({\n components: mergedComponents.value,\n scope: options.scope?.value,\n }).SchemaField\n })\n\n return {\n hasDefaultSlot,\n schemaField,\n }\n}\n"],"mappings":";;;;;AAQA,SAAS,oBAAoB,MAAiC;AAC5D,KAAI,KAAK,KAAK,CACZ,QAAQ,MAAiC;AAC3C,QAAO;;AAQT,SAAgB,iBAAiB,SAAkC;CACjE,MAAM,eAAe,eAAiC,oBAAoB,QAAQ,QAAQ,UAAU,EAAE,KAAK,CAAC;AAG5G,QAAO;EACL;EACA,YAJiB,eAAiC,aAAa,SAAS,QAAQ,QAAQ,aAAa,CAAC;EAKvG;;AAWH,SAAgB,wBAAwB,SAAyC;CAC/E,MAAM,iBAAiB,eAAe,QAAQ,QAAQ,MAAM,QAAQ,CAAC;CACrE,MAAM,mBAAmB,eAAe,yBAAyB,QAAQ,WAAW,MAAM,CAAC;AAU3F,QAAO;EACL;EACA,aAXkB,eAAiC;AACnD,OAAI,eAAe,SAAS,CAAC,QAAQ,OAAO,MAC1C,QAAO;AACT,UAAO,QAAQ,YAAY,SAAS,kBAAkB;IACpD,YAAY,iBAAiB;IAC7B,OAAO,QAAQ,OAAO;IACvB,CAAC,CAAC;IACH;EAKD"}
|
|
1
|
+
{"version":3,"file":"hooks.mjs","names":[],"sources":["../../src/query-form/hooks.ts"],"sourcesContent":["import type { Form } from '@silver-formily/core'\nimport type { ISchema } from '@silver-formily/json-schema'\nimport type { Component, ComputedRef, MaybeRefOrGetter, Slots } from 'vue'\nimport { isFn } from '@silver-formily/shared'\nimport { createSchemaField } from '@silver-formily/vue'\nimport { computed, toValue } from 'vue'\nimport { mergeQueryFormComponents } from './default-components'\n\nfunction resolveExternalForm(form: unknown): Form | undefined {\n if (isFn(form))\n return (form as () => Form | undefined)()\n return form as Form | undefined\n}\n\ninterface UseQueryFormFormOptions {\n formProps: MaybeRefOrGetter<{ form?: unknown }>\n fallbackForm?: MaybeRefOrGetter<Form | undefined>\n}\n\nexport function useQueryFormForm(options: UseQueryFormFormOptions) {\n const externalForm = computed<Form | undefined>(() => resolveExternalForm(toValue(options.formProps)?.form))\n const activeForm = computed<Form | undefined>(() => externalForm.value ?? toValue(options.fallbackForm))\n\n return {\n externalForm,\n activeForm,\n }\n}\n\ninterface UseQueryFormSchemaFieldOptions {\n slots: Slots\n schema: ComputedRef<ISchema | undefined>\n schemaField: ComputedRef<Component | undefined>\n components: ComputedRef<Record<string, Component> | undefined>\n scope?: ComputedRef<Record<string, any> | undefined>\n}\n\nexport function useQueryFormSchemaField(options: UseQueryFormSchemaFieldOptions) {\n const hasDefaultSlot = computed(() => Boolean(options.slots.default))\n const mergedComponents = computed(() => mergeQueryFormComponents(options.components.value))\n const schemaField = computed<Component | null>(() => {\n if (hasDefaultSlot.value || !options.schema.value)\n return null\n return options.schemaField.value ?? createSchemaField({\n components: mergedComponents.value,\n scope: options.scope?.value,\n }).SchemaField\n })\n\n return {\n hasDefaultSlot,\n schemaField,\n }\n}\n"],"mappings":";;;;;AAQA,SAAS,oBAAoB,MAAiC;AAC5D,KAAI,KAAK,KAAK,CACZ,QAAQ,MAAiC;AAC3C,QAAO;;AAQT,SAAgB,iBAAiB,SAAkC;CACjE,MAAM,eAAe,eAAiC,oBAAoB,QAAQ,QAAQ,UAAU,EAAE,KAAK,CAAC;AAG5G,QAAO;EACL;EACA,YAJiB,eAAiC,aAAa,SAAS,QAAQ,QAAQ,aAAa,CAAC;EAKvG;;AAWH,SAAgB,wBAAwB,SAAyC;CAC/E,MAAM,iBAAiB,eAAe,QAAQ,QAAQ,MAAM,QAAQ,CAAC;CACrE,MAAM,mBAAmB,eAAe,yBAAyB,QAAQ,WAAW,MAAM,CAAC;AAU3F,QAAO;EACL;EACA,aAXkB,eAAiC;AACnD,OAAI,eAAe,SAAS,CAAC,QAAQ,OAAO,MAC1C,QAAO;AACT,UAAO,QAAQ,YAAY,SAAS,kBAAkB;IACpD,YAAY,iBAAiB;IAC7B,OAAO,QAAQ,OAAO;IACvB,CAAC,CAAC;IACH;EAKD"}
|
|
@@ -82,10 +82,10 @@ declare const QueryForm: {
|
|
|
82
82
|
}) & {
|
|
83
83
|
Light: {
|
|
84
84
|
new (...args: any[]): _$vue.CreateComponentPublicInstanceWithMixins<Readonly<IQueryFormLightProps> & Readonly<{
|
|
85
|
-
onAutoSubmit?: (values:
|
|
85
|
+
onAutoSubmit?: (values: Form) => any;
|
|
86
86
|
onAutoSubmitFailed?: (error: any) => any;
|
|
87
87
|
}>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {} & {
|
|
88
|
-
autoSubmit: (values:
|
|
88
|
+
autoSubmit: (values: Form) => any;
|
|
89
89
|
autoSubmitFailed: (error: any) => any;
|
|
90
90
|
}, _$vue.PublicProps, {
|
|
91
91
|
components: Record<string, _$vue.Component>;
|
|
@@ -98,7 +98,7 @@ declare const QueryForm: {
|
|
|
98
98
|
M: {};
|
|
99
99
|
Defaults: {};
|
|
100
100
|
}, Readonly<IQueryFormLightProps> & Readonly<{
|
|
101
|
-
onAutoSubmit?: (values:
|
|
101
|
+
onAutoSubmit?: (values: Form) => any;
|
|
102
102
|
onAutoSubmitFailed?: (error: any) => any;
|
|
103
103
|
}>, {}, {}, {}, {}, {
|
|
104
104
|
components: Record<string, _$vue.Component>;
|
|
@@ -108,10 +108,10 @@ declare const QueryForm: {
|
|
|
108
108
|
__isTeleport?: never;
|
|
109
109
|
__isSuspense?: never;
|
|
110
110
|
} & _$vue.ComponentOptionsBase<Readonly<IQueryFormLightProps> & Readonly<{
|
|
111
|
-
onAutoSubmit?: (values:
|
|
111
|
+
onAutoSubmit?: (values: Form) => any;
|
|
112
112
|
onAutoSubmitFailed?: (error: any) => any;
|
|
113
113
|
}>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {} & {
|
|
114
|
-
autoSubmit: (values:
|
|
114
|
+
autoSubmit: (values: Form) => any;
|
|
115
115
|
autoSubmitFailed: (error: any) => any;
|
|
116
116
|
}, string, {
|
|
117
117
|
components: Record<string, _$vue.Component>;
|
|
@@ -6,7 +6,7 @@ import { reactionWatch } from "@silver-formily/reactive-vue";
|
|
|
6
6
|
import { computed, createBlock, createCommentVNode, createElementVNode, defineComponent, mergeProps, normalizeClass, onUnmounted, openBlock, renderSlot, resolveDynamicComponent, unref, useSlots, withCtx } from "vue";
|
|
7
7
|
import { useFieldSchema, useForm } from "@silver-formily/vue";
|
|
8
8
|
import { throttle } from "lodash-es";
|
|
9
|
-
import { toJS } from "@formily/reactive";
|
|
9
|
+
import { toJS } from "@silver-formily/reactive";
|
|
10
10
|
//#region src/query-form/query-form-light.vue
|
|
11
11
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
12
12
|
name: "FQueryFormLight",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-form-light.mjs","names":[],"sources":["../../src/query-form/query-form-light.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Form } from '@formily/core'\nimport type { IQueryFormLightProps } from './types'\nimport { toJS } from '@formily/reactive'\nimport { reactionWatch } from '@silver-formily/reactive-vue'\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: computed(() => ({ form: props.form })),\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 onAutoSubmit: props.onAutoSubmit,\n onAutoSubmitFailed: props.onAutoSubmitFailed,\n}))\n\nfunction submitByChange() {\n const form = activeForm.value\n if (!form)\n return\n form\n .submit((values) => {\n emit('autoSubmit', values)\n return props.onAutoSubmit?.(values)\n })\n .catch((error) => {\n emit('autoSubmitFailed', error)\n props.onAutoSubmitFailed?.(error)\n })\n}\n\nconst triggerSubmit = throttle(() => {\n submitByChange()\n}, props.throttleWait, {\n leading: false,\n trailing: true,\n})\n\nreactionWatch(() => {\n const form = activeForm.value\n if (!form)\n return\n return toJS(form.values)\n}, () => {\n triggerSubmit()\n})\n\nonUnmounted(() => {\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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAiBA,MAAM,QAAQ;EAId,MAAM,OAAO;EAKb,MAAM,EAAE,OAAO,cAAc,cAAc,CAAC,cAAc,sBAAsB,CAAA;EAChF,MAAM,QAAQ,UAAS;EACvB,MAAM,UAAU,SAAQ;EACxB,MAAM,iBAAiB,gBAAe;EACtC,MAAM,YAAY,GAAG,YAAY;EAEjC,MAAM,EAAE,cAAc,eAAe,iBAAiB;GACpD,WAAW,gBAAgB,EAAE,MAAM,MAAM,MAAM,EAAE;GACjD,cAAc;GACf,CAAA;EACD,MAAM,iBAAiB,eAAe,MAAM,UAAU,eAAe,MAAK;EAE1E,MAAM,iBAAiB,gBAAgB;GACrC,UAAU;GACV,GAAG,UAAU;GACb,MAAM,aAAa;GACnB,cAAc,MAAM;GACpB,oBAAoB,MAAM;GAC3B,EAAC;EAEF,SAAS,iBAAiB;GACxB,MAAM,OAAO,WAAW;AACxB,OAAI,CAAC,KACH;AACF,QACG,QAAQ,WAAW;AAClB,SAAK,cAAc,OAAM;AACzB,WAAO,MAAM,eAAe,OAAM;KACnC,CACA,OAAO,UAAU;AAChB,SAAK,oBAAoB,MAAK;AAC9B,UAAM,qBAAqB,MAAK;KACjC;;EAGL,MAAM,gBAAgB,eAAe;AACnC,mBAAe;KACd,MAAM,cAAc;GACrB,SAAS;GACT,UAAU;GACX,CAAA;AAED,sBAAoB;GAClB,MAAM,OAAO,WAAW;AACxB,OAAI,CAAC,KACH;AACF,UAAO,KAAK,KAAK,OAAM;WAChB;AACP,kBAAc;IACf;AAED,oBAAkB;AAChB,iBAAc,QAAO;IACtB;EAED,MAAM,EAAE,gBAAgB,gBAAgB,wBAAwB;GAC9D;GACA,QAAQ;GACR,aAAa,eAAe,MAAM,YAAY;GAC9C,YAAY,eAAe,MAAM,WAAW;GAC7C,CAAA;;uBAIC,YASQ,MAAA,YAAA,EATR,WAAe,eASP,OATqB,EAAG,OAAO,WAAS,CAAA,EAAA;2BAQxC,CAPN,mBAOM,OAAA,EAPA,OAAK,eAAA,GAAK,UAAS,WAAA,EAAA,EAAA,CACX,MAAA,eAAc,GAA1B,WAA8B,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA,GAGjB,MAAA,YAAW,IAAA,WAAA,EAFxB,YAIE,wBAHK,MAAA,YAAW,CAAA,EAAA;;KAEf,QAAQ,eAAA"}
|
|
1
|
+
{"version":3,"file":"query-form-light.mjs","names":[],"sources":["../../src/query-form/query-form-light.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Form } from '@silver-formily/core'\nimport type { IQueryFormLightProps } from './types'\nimport { toJS } from '@silver-formily/reactive'\nimport { reactionWatch } from '@silver-formily/reactive-vue'\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: computed(() => ({ form: props.form })),\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 onAutoSubmit: props.onAutoSubmit,\n onAutoSubmitFailed: props.onAutoSubmitFailed,\n}))\n\nfunction submitByChange() {\n const form = activeForm.value\n if (!form)\n return\n form\n .submit((values) => {\n emit('autoSubmit', values)\n return props.onAutoSubmit?.(values)\n })\n .catch((error) => {\n emit('autoSubmitFailed', error)\n props.onAutoSubmitFailed?.(error)\n })\n}\n\nconst triggerSubmit = throttle(() => {\n submitByChange()\n}, props.throttleWait, {\n leading: false,\n trailing: true,\n})\n\nreactionWatch(() => {\n const form = activeForm.value\n if (!form)\n return\n return toJS(form.values)\n}, () => {\n triggerSubmit()\n})\n\nonUnmounted(() => {\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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAiBA,MAAM,QAAQ;EAId,MAAM,OAAO;EAKb,MAAM,EAAE,OAAO,cAAc,cAAc,CAAC,cAAc,sBAAsB,CAAA;EAChF,MAAM,QAAQ,UAAS;EACvB,MAAM,UAAU,SAAQ;EACxB,MAAM,iBAAiB,gBAAe;EACtC,MAAM,YAAY,GAAG,YAAY;EAEjC,MAAM,EAAE,cAAc,eAAe,iBAAiB;GACpD,WAAW,gBAAgB,EAAE,MAAM,MAAM,MAAM,EAAE;GACjD,cAAc;GACf,CAAA;EACD,MAAM,iBAAiB,eAAe,MAAM,UAAU,eAAe,MAAK;EAE1E,MAAM,iBAAiB,gBAAgB;GACrC,UAAU;GACV,GAAG,UAAU;GACb,MAAM,aAAa;GACnB,cAAc,MAAM;GACpB,oBAAoB,MAAM;GAC3B,EAAC;EAEF,SAAS,iBAAiB;GACxB,MAAM,OAAO,WAAW;AACxB,OAAI,CAAC,KACH;AACF,QACG,QAAQ,WAAW;AAClB,SAAK,cAAc,OAAM;AACzB,WAAO,MAAM,eAAe,OAAM;KACnC,CACA,OAAO,UAAU;AAChB,SAAK,oBAAoB,MAAK;AAC9B,UAAM,qBAAqB,MAAK;KACjC;;EAGL,MAAM,gBAAgB,eAAe;AACnC,mBAAe;KACd,MAAM,cAAc;GACrB,SAAS;GACT,UAAU;GACX,CAAA;AAED,sBAAoB;GAClB,MAAM,OAAO,WAAW;AACxB,OAAI,CAAC,KACH;AACF,UAAO,KAAK,KAAK,OAAM;WAChB;AACP,kBAAc;IACf;AAED,oBAAkB;AAChB,iBAAc,QAAO;IACtB;EAED,MAAM,EAAE,gBAAgB,gBAAgB,wBAAwB;GAC9D;GACA,QAAQ;GACR,aAAa,eAAe,MAAM,YAAY;GAC9C,YAAY,eAAe,MAAM,WAAW;GAC7C,CAAA;;uBAIC,YASQ,MAAA,YAAA,EATR,WAAe,eASP,OATqB,EAAG,OAAO,WAAS,CAAA,EAAA;2BAQxC,CAPN,mBAOM,OAAA,EAPA,OAAK,eAAA,GAAK,UAAS,WAAA,EAAA,EAAA,CACX,MAAA,eAAc,GAA1B,WAA8B,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA,GAGjB,MAAA,YAAW,IAAA,WAAA,EAFxB,YAIE,wBAHK,MAAA,YAAW,CAAA,EAAA;;KAEf,QAAQ,eAAA"}
|
|
@@ -12,7 +12,7 @@ import { computed, createBlock, createCommentVNode, createTextVNode, createVNode
|
|
|
12
12
|
import { useFieldSchema, useForm } from "@silver-formily/vue";
|
|
13
13
|
import { ArrowDown, ArrowUp } from "@element-plus/icons-vue";
|
|
14
14
|
import { createGrid } from "@silver-formily/grid";
|
|
15
|
-
import { Schema } from "@formily/json-schema";
|
|
15
|
+
import { Schema } from "@silver-formily/json-schema";
|
|
16
16
|
//#region src/query-form/query-form.vue
|
|
17
17
|
const COLLAPSED_ROWS = 1;
|
|
18
18
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-form.mjs","names":[],"sources":["../../src/query-form/query-form.vue"],"sourcesContent":["<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 { createGrid } from '@silver-formily/grid'\nimport { autorunEffect } from '@silver-formily/reactive-vue'\nimport { useFieldSchema, useForm } from '@silver-formily/vue'\nimport { ElIcon, ElLink } from 'element-plus'\nimport { computed, 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: computed(() => ({ form: props.form })),\n fallbackForm: formRef,\n})\nconst innerFormProps = computed(() => ({\n fullness: true,\n ...formProps.value,\n form: externalForm.value,\n onAutoSubmit: props.onAutoSubmit,\n onAutoSubmitFailed: props.onAutoSubmitFailed,\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 const isLastNode = node.index === grid.childSize - 1\n if ('element' in node && node.element) {\n return node.element.dataset.queryFormActions !== undefined || isLastNode\n }\n return isLastNode\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\nautorunEffect(() => {\n expanded.value = grid.maxRows === Infinity\n updateType()\n})\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"],"mappings":";;;;;;;;;;;;;;;;AA2CA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAnBvB,MAAM,QAAQ;EAcd,MAAM,EAAE,OAAO,cAAc,cAAc,CAAC,cAAc,sBAAsB,CAAA;EAChF,MAAM,QAAQ,UAAS;EACvB,MAAM,YAAY,GAAG,YAAY;EACjC,MAAM,iBAAiB,SAAS;EAGhC,MAAM,iBAAiB,gBAAe;EACtC,MAAM,UAAU,SAAQ;EACxB,MAAM,EAAE,cAAc,eAAe,iBAAiB;GACpD,WAAW,gBAAgB,EAAE,MAAM,MAAM,MAAM,EAAE;GACjD,cAAc;GACf,CAAA;EACD,MAAM,iBAAiB,gBAAgB;GACrC,UAAU;GACV,GAAG,UAAU;GACb,MAAM,aAAa;GACnB,cAAc,MAAM;GACpB,oBAAoB,MAAM;GAC3B,EAAC;EAEF,MAAM,aAAa,eAA8B;GAC/C,MAAM,YAAY,MAAM,UAAU,eAAe;;AAEjD,OAAI,CAAC,UACH,QAAO,EAAC;AAEV,WADe,qBAAqB,SAAS,YAAY,IAAI,OAAO,UAAS,EAC/D,eAAe,aAAsB,UAA2B;IAC5E;IACA,QAAQ;IACT,EAAC;IACH;EAED,SAAS,aAAa,MAAwB;AAC5C,UAAO,WAAW,OAAO,MAAM,KAAK,CAAC,MAAK;;EAG5C,SAAS,qBACP,MACA,MACA,mBACA;GACA,MAAM,QAAQ,KAAK,SAAS;GAC5B,MAAM,QAAQ,WAAW,MAAM;GAC/B,MAAM,SAAS,OAAO;AAEtB,UAAO;IACL,OAAO,aAFI,OAAO,QAAQ,QAAQ,KAET;IACzB;IACA;IACA;IACA;IACA,WAAW,qBAAqB,KAAK,YAAY;IACjD,YAAY,KAAK;IACnB;;EAGF,SAAS,mBAAmB,SAAkD;AAC5E,OAAI,CAAC,QAAQ,UACX,QAAO;GAET,MAAM,YAAY,QAAQ,KAAK,aAAa;AAE5C,OAAI,EADe,YAAY,iBAAiB,GAE9C,QAAO;AAGT,OAAI,EADkB,iBAAiB,QAAQ,KAAK,GAAG,gBAErD,QAAO;GAGT,MAAM,aAFe,QAAQ,KAAK,gBAAgB,MACrC,QAAQ,KAAK,QAAQ,KACM;AACxC,OAAI,cAAc,kBAAkB,cAAc,QAAQ,KAAK,QAC7D,QAAO;AAET,UAAO;;EAGT,SAAS,mBAAmB,SAAkD;AAI5E,WAHgB,MAAM,cAClB,MAAM,YAAY,QAAO,GACzB,mBAAmB,QAAO,MACX;;EAGrB,SAAS,cAAc,MAAgB,MAAyB;GAC9D,MAAM,aAAa,KAAK,UAAU,KAAK,YAAY;AACnD,OAAI,aAAa,QAAQ,KAAK,QAC5B,QAAO,KAAK,QAAQ,QAAQ,qBAAqB,KAAA,KAAa;AAEhE,UAAO;;EAGT,SAAS,iBAAiB,MAAyB;GACjD,MAAM,QAAQ,KAAK,YAAY,EAAE,EAC9B,QAAO,SAAQ,CAAC,cAAc,MAAM,KAAK,CAAA,CACzC,KAAI,SAAQ,KAAK,aAAa,EAAC;AAClC,UAAO,IAAI,IAAI,KAAK,CAAC;;EAGvB,MAAM,wBAAuD,MAAM,SAAS;AAC1E,OAAI,cAAc,MAAM,KAAK,CAC3B,QAAO;AACT,UAAO,mBAAmB,qBAAqB,MAAM,KAAK,CAAA;;EAG5D,MAAM,gBAAgB,MAAM,aAAa,EAAC;EAY1C,MAAM,OAAO,WAPqB;GAChC,GAL8C,cAAc,eAAe,KAAA,KAAa,cAAc,eAAe,KAAA,IACnH,EAAE,YAAY,GAAE,GAChB,EAAC;GAIH,GAAG;GACH,SAAU,MAAM,mBAAmB,CAAC,MAAM,aAAc,WAAW;GACnE,eAAe;GACjB,CAEmC;EAEnC,MAAM,WAAW,IAAI,KAAK,YAAY,SAAQ;EAC9C,MAAM,WAAW,IAAyD,gBAAe;EAEzF,SAAS,aAAa;AACpB,OAAI,CAAC,MAAM,YAAY;AACrB,aAAS,QAAQ;AACjB;;AAGF,OAAI,CAAC,MAAM,aAAa;AACtB,aAAS,QAAQ,iBAAiB,KAAK,GAAG,iBACtC,gBACA;AACJ;;;AAUF,QAPc,KAAK,YAAY,EAAC,EACG,MAAM,SAAS;AAChD,QAAI,cAAc,MAAM,KAAK,CAC3B,QAAO;AACT,WAAO,CAAC,mBAAmB,qBAAqB,MAAM,MAAM,KAAK,CAAA;KAClE,EAEyB;AACxB,aAAS,QAAQ;AACjB;;AAGF,YAAS,QADQ,KAAK,aACM,iBAAiB,IAAI,oBAAoB;;AAGvE,sBAAoB;AAClB,YAAS,QAAQ,KAAK,YAAY;AAClC,eAAW;IACZ;EAED,SAAS,SAAS;AAChB,OAAI,CAAC,MAAM,WACT;AACF,QAAK,UAAU,KAAK,YAAY,WAAW,iBAAiB;;EAG9D,MAAM,EAAE,gBAAgB,gBAAgB,wBAAwB;GAC9D;GACA,QAAQ,eAAe,MAAM,OAAO;GACpC,aAAa,eAAe,MAAM,YAAY;GAC9C,YAAY,eAAe,MAAM,WAAW;GAC5C,OAAO,eAAe,MAAM,MAAM;GACnC,CAAA;;uBAIC,YAsGO,MAAA,YAAA,EAtGP,WAAc,eAsGP,OAtGqB,EAAG,OAAO,WAAS,CAAA,EAAA;2BAqGlC,CApGX,YAoGW,MAAA,SAAA,EAAA,EApGA,MAAM,MAAA,KAAI,EAAA,EAAA;4BACW,CAAlB,MAAA,eAAc,GAA1B,WAA8B,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA,GAGjB,MAAA,YAAW,IAAA,WAAA,EAFxB,YAIE,wBAHK,MAAA,YAAW,CAAA,EAAA;;MAEf,QAAQ,MAAM;kEAEjB,YA4FiB,MAAA,eAAA,EAAA;MA3Fd,aAAW;MACZ,2BAAA;MACC,OAAK,eAAA,CAAA,GAAiB,UAAS,YAAuB,MAAM,mBAAe,GAAO,UAAS,oBAAA,CAAA;;6BA0BjF,CArBK,SAAA,UAAQ,qBAAA,WAAA,EACtB,YAmBkB,MAAA,gBAAA,EAAA;;OAlBf,OAAO,MAAM,kBAAe,UAAA;OAC7B,mBAAA;OACA,QAAA;OACC,OAAK,eAAE,MAAM,mBAAe,EAAA,OAAA,QAAA,CAAA;;8BActB,CAZP,WAYO,KAAA,QAAA,WAAA;QAVJ,UAAU,SAAA;QACF;QACR,MAAM,SAAA;gBAQF,CANS,MAAM,cAAA,WAAA,EAApB,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAF+B,MAAM,YAAW,CAAA,EAAA;+BACjC,CAAA,gBAAA,gBAAnB,MAAM,WAAU,EAAA,EAAA,CAAA,CAAA;;mDAER,MAAM,aAAA,WAAA,EAAnB,YAEQ,MAAA,MAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAF8B,MAAM,WAAU,CAAA,EAAA;+BAC/B,CAAA,gBAAA,gBAAlB,MAAM,UAAS,EAAA,EAAA,CAAA,CAAA;;;;mCAKL,SAAA,UAAQ,iBAAsB,MAAM,cAAA,WAAA,EACvD,YAsCkB,MAAA,gBAAA,EAAA;;OArCf,OAAO,MAAM,kBAAe,UAAA;OAC7B,mBAAA;OACA,QAAA;OACC,OAAK,eAAE,MAAM,mBAAe,EAAA,OAAA,QAAA,CAAA;;8BActB,CAZP,WAYO,KAAA,QAAA,WAAA;QAVJ,UAAU,SAAA;QACF;QACR,MAAM,SAAA;gBAQF,CANS,MAAM,cAAA,WAAA,EAApB,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAF+B,MAAM,YAAW,CAAA,EAAA;+BACjC,CAAA,gBAAA,gBAAnB,MAAM,WAAU,EAAA,EAAA,CAAA,CAAA;;mDAER,MAAM,aAAA,WAAA,EAAnB,YAEQ,MAAA,MAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAF8B,MAAM,WAAU,CAAA,EAAA;+BAC/B,CAAA,gBAAA,gBAAlB,MAAM,UAAS,EAAA,EAAA,CAAA,CAAA;;qDAGtB,WAkBO,KAAA,QAAA,YAAA;QAhBJ,UAAU,SAAA;QACF;QACR,MAAM,SAAA;gBAcF,CAZL,YAWS,MAAA,OAAA,EAAA;QAVP,MAAK;QACJ,WAAW,MAAA,wBAAuB,EAAA;QAClC,OAAK,eAAA,GAAK,UAAS,iBAAA;QACnB,SAAO;;+BAE8C,CAAA,gBAAA,gBAAnD,SAAA,QAAW,MAAM,eAAe,MAAM,WAAU,GAAG,KACtD,EAAA,EAAA,YAGS,MAAA,OAAA,EAAA,EAHA,OAAK,eAAA,GAAK,UAAS,iBAAA,EAAA,EAAA;gCACC,CAAZ,SAAA,SAAA,WAAA,EAAf,YAA2B,MAAA,QAAA,EAAA,EAAA,KAAA,GAAA,CAAA,KAAA,WAAA,EAC3B,YAAoB,MAAA,UAAA,EAAA,EAAA,KAAA,GAAA,CAAA,EAAA,CAAA;;;;;;iDAO5B,YAkBkB,MAAA,gBAAA,EAAA;;OAjBhB,OAAM;OACN,QAAA;OACA,OAAA;QAAA,WAAA;QAAA,SAAA;QAAmC;;8BAc5B,CAZP,WAYO,KAAA,QAAA,WAAA;QAVJ,UAAU,SAAA;QACF;QACR,MAAM,SAAA;gBAQF,CANS,MAAM,cAAA,WAAA,EAApB,YAES,MAAA,OAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAF+B,MAAM,YAAW,CAAA,EAAA;+BACjC,CAAA,gBAAA,gBAAnB,MAAM,WAAU,EAAA,EAAA,CAAA,CAAA;;mDAER,MAAM,aAAA,WAAA,EAAnB,YAEQ,MAAA,MAAA,EAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAF8B,MAAM,WAAU,CAAA,EAAA;+BAC/B,CAAA,gBAAA,gBAAlB,MAAM,UAAS,EAAA,EAAA,CAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"query-form.mjs","names":[],"sources":["../../src/query-form/query-form.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Grid, GridNode, IGridOptions } from '@silver-formily/grid'\nimport type { ISchema } from '@silver-formily/json-schema'\nimport type { IQueryFormProps, SchemaEntry } from './types'\nimport { ArrowDown, ArrowUp } from '@element-plus/icons-vue'\nimport { createGrid } from '@silver-formily/grid'\nimport { Schema } from '@silver-formily/json-schema'\nimport { autorunEffect } from '@silver-formily/reactive-vue'\nimport { useFieldSchema, useForm } from '@silver-formily/vue'\nimport { ElIcon, ElLink } from 'element-plus'\nimport { computed, 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: computed(() => ({ form: props.form })),\n fallbackForm: formRef,\n})\nconst innerFormProps = computed(() => ({\n fullness: true,\n ...formProps.value,\n form: externalForm.value,\n onAutoSubmit: props.onAutoSubmit,\n onAutoSubmitFailed: props.onAutoSubmitFailed,\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 const isLastNode = node.index === grid.childSize - 1\n if ('element' in node && node.element) {\n return node.element.dataset.queryFormActions !== undefined || isLastNode\n }\n return isLastNode\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\nautorunEffect(() => {\n expanded.value = grid.maxRows === Infinity\n updateType()\n})\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"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Component } from "vue";
|
|
2
|
-
import { Form, GeneralField, IFormFeedback } from "@formily/core";
|
|
2
|
+
import { Form, GeneralField, IFormFeedback } from "@silver-formily/core";
|
|
3
3
|
import { Grid, GridNode, IGridOptions } from "@silver-formily/grid";
|
|
4
|
-
import { ISchema } from "@formily/json-schema";
|
|
4
|
+
import { ISchema } from "@silver-formily/json-schema";
|
|
5
5
|
|
|
6
6
|
//#region src/query-form/types.d.ts
|
|
7
7
|
type QueryFormFormProvider = Form | (() => Form | undefined);
|
|
@@ -1,158 +1,7 @@
|
|
|
1
1
|
import { IQueryFormItemProps, QueryFormItemMode, QueryFormItemPagination, QueryFormItemPaginationMap, QueryFormItemPaginationProps, QueryFormItemQueryProps, QueryFormItemRequest, QueryFormItemRequestResultObject, QueryFormItemRequestSuccessPayload } from "./types.js";
|
|
2
|
-
import * as _$element_plus0 from "element-plus";
|
|
3
|
-
import * as _$vue from "vue";
|
|
4
|
-
import * as _$_formily_json_schema0 from "@formily/json-schema";
|
|
5
2
|
|
|
6
3
|
//#region src/query-form-item/index.d.ts
|
|
7
|
-
declare const QueryFormItem:
|
|
8
|
-
new (...args: any[]): _$vue.CreateComponentPublicInstanceWithMixins<Readonly<_$vue.ExtractPropTypes<{
|
|
9
|
-
mode: {
|
|
10
|
-
type: _$vue.PropType<QueryFormItemMode>;
|
|
11
|
-
default: string;
|
|
12
|
-
};
|
|
13
|
-
request: _$vue.PropType<QueryFormItemRequest>;
|
|
14
|
-
clearOnDataChange: {
|
|
15
|
-
type: BooleanConstructor;
|
|
16
|
-
default: boolean;
|
|
17
|
-
};
|
|
18
|
-
querySchema: _$vue.PropType<_$_formily_json_schema0.ISchema>;
|
|
19
|
-
queryFormProps: {
|
|
20
|
-
type: _$vue.PropType<QueryFormItemQueryProps>;
|
|
21
|
-
default: () => {};
|
|
22
|
-
};
|
|
23
|
-
pagination: {
|
|
24
|
-
type: BooleanConstructor;
|
|
25
|
-
default: boolean;
|
|
26
|
-
};
|
|
27
|
-
paginationProps: {
|
|
28
|
-
type: _$vue.PropType<QueryFormItemPaginationProps>;
|
|
29
|
-
default: () => {};
|
|
30
|
-
};
|
|
31
|
-
paginationMap: {
|
|
32
|
-
type: _$vue.PropType<QueryFormItemPaginationMap>;
|
|
33
|
-
default: () => {};
|
|
34
|
-
};
|
|
35
|
-
immediate: {
|
|
36
|
-
type: BooleanConstructor;
|
|
37
|
-
default: boolean;
|
|
38
|
-
};
|
|
39
|
-
}>> & Readonly<{
|
|
40
|
-
onRequestSuccess?: (payload: QueryFormItemRequestSuccessPayload) => any;
|
|
41
|
-
onRequestFailed?: (error: any) => any;
|
|
42
|
-
}>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {} & {
|
|
43
|
-
requestSuccess: (payload: QueryFormItemRequestSuccessPayload) => any;
|
|
44
|
-
requestFailed: (error: any) => any;
|
|
45
|
-
}, _$vue.PublicProps, {
|
|
46
|
-
pagination: boolean;
|
|
47
|
-
paginationProps: Partial<_$element_plus0.PaginationProps>;
|
|
48
|
-
mode: QueryFormItemMode;
|
|
49
|
-
clearOnDataChange: boolean;
|
|
50
|
-
queryFormProps: QueryFormItemQueryProps;
|
|
51
|
-
paginationMap: QueryFormItemPaginationMap;
|
|
52
|
-
immediate: boolean;
|
|
53
|
-
}, true, {}, {}, _$vue.GlobalComponents, _$vue.GlobalDirectives, string, {}, any, _$vue.ComponentProvideOptions, {
|
|
54
|
-
P: {};
|
|
55
|
-
B: {};
|
|
56
|
-
D: {};
|
|
57
|
-
C: {};
|
|
58
|
-
M: {};
|
|
59
|
-
Defaults: {};
|
|
60
|
-
}, Readonly<_$vue.ExtractPropTypes<{
|
|
61
|
-
mode: {
|
|
62
|
-
type: _$vue.PropType<QueryFormItemMode>;
|
|
63
|
-
default: string;
|
|
64
|
-
};
|
|
65
|
-
request: _$vue.PropType<QueryFormItemRequest>;
|
|
66
|
-
clearOnDataChange: {
|
|
67
|
-
type: BooleanConstructor;
|
|
68
|
-
default: boolean;
|
|
69
|
-
};
|
|
70
|
-
querySchema: _$vue.PropType<_$_formily_json_schema0.ISchema>;
|
|
71
|
-
queryFormProps: {
|
|
72
|
-
type: _$vue.PropType<QueryFormItemQueryProps>;
|
|
73
|
-
default: () => {};
|
|
74
|
-
};
|
|
75
|
-
pagination: {
|
|
76
|
-
type: BooleanConstructor;
|
|
77
|
-
default: boolean;
|
|
78
|
-
};
|
|
79
|
-
paginationProps: {
|
|
80
|
-
type: _$vue.PropType<QueryFormItemPaginationProps>;
|
|
81
|
-
default: () => {};
|
|
82
|
-
};
|
|
83
|
-
paginationMap: {
|
|
84
|
-
type: _$vue.PropType<QueryFormItemPaginationMap>;
|
|
85
|
-
default: () => {};
|
|
86
|
-
};
|
|
87
|
-
immediate: {
|
|
88
|
-
type: BooleanConstructor;
|
|
89
|
-
default: boolean;
|
|
90
|
-
};
|
|
91
|
-
}>> & Readonly<{
|
|
92
|
-
onRequestSuccess?: (payload: QueryFormItemRequestSuccessPayload) => any;
|
|
93
|
-
onRequestFailed?: (error: any) => any;
|
|
94
|
-
}>, {}, {}, {}, {}, {
|
|
95
|
-
pagination: boolean;
|
|
96
|
-
paginationProps: Partial<_$element_plus0.PaginationProps>;
|
|
97
|
-
mode: QueryFormItemMode;
|
|
98
|
-
clearOnDataChange: boolean;
|
|
99
|
-
queryFormProps: QueryFormItemQueryProps;
|
|
100
|
-
paginationMap: QueryFormItemPaginationMap;
|
|
101
|
-
immediate: boolean;
|
|
102
|
-
}>;
|
|
103
|
-
__isFragment?: never;
|
|
104
|
-
__isTeleport?: never;
|
|
105
|
-
__isSuspense?: never;
|
|
106
|
-
} & _$vue.ComponentOptionsBase<Readonly<_$vue.ExtractPropTypes<{
|
|
107
|
-
mode: {
|
|
108
|
-
type: _$vue.PropType<QueryFormItemMode>;
|
|
109
|
-
default: string;
|
|
110
|
-
};
|
|
111
|
-
request: _$vue.PropType<QueryFormItemRequest>;
|
|
112
|
-
clearOnDataChange: {
|
|
113
|
-
type: BooleanConstructor;
|
|
114
|
-
default: boolean;
|
|
115
|
-
};
|
|
116
|
-
querySchema: _$vue.PropType<_$_formily_json_schema0.ISchema>;
|
|
117
|
-
queryFormProps: {
|
|
118
|
-
type: _$vue.PropType<QueryFormItemQueryProps>;
|
|
119
|
-
default: () => {};
|
|
120
|
-
};
|
|
121
|
-
pagination: {
|
|
122
|
-
type: BooleanConstructor;
|
|
123
|
-
default: boolean;
|
|
124
|
-
};
|
|
125
|
-
paginationProps: {
|
|
126
|
-
type: _$vue.PropType<QueryFormItemPaginationProps>;
|
|
127
|
-
default: () => {};
|
|
128
|
-
};
|
|
129
|
-
paginationMap: {
|
|
130
|
-
type: _$vue.PropType<QueryFormItemPaginationMap>;
|
|
131
|
-
default: () => {};
|
|
132
|
-
};
|
|
133
|
-
immediate: {
|
|
134
|
-
type: BooleanConstructor;
|
|
135
|
-
default: boolean;
|
|
136
|
-
};
|
|
137
|
-
}>> & Readonly<{
|
|
138
|
-
onRequestSuccess?: (payload: QueryFormItemRequestSuccessPayload) => any;
|
|
139
|
-
onRequestFailed?: (error: any) => any;
|
|
140
|
-
}>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {} & {
|
|
141
|
-
requestSuccess: (payload: QueryFormItemRequestSuccessPayload) => any;
|
|
142
|
-
requestFailed: (error: any) => any;
|
|
143
|
-
}, string, {
|
|
144
|
-
pagination: boolean;
|
|
145
|
-
paginationProps: Partial<_$element_plus0.PaginationProps>;
|
|
146
|
-
mode: QueryFormItemMode;
|
|
147
|
-
clearOnDataChange: boolean;
|
|
148
|
-
queryFormProps: QueryFormItemQueryProps;
|
|
149
|
-
paginationMap: QueryFormItemPaginationMap;
|
|
150
|
-
immediate: boolean;
|
|
151
|
-
}, {}, string, {}, _$vue.GlobalComponents, _$vue.GlobalDirectives, string, _$vue.ComponentProvideOptions> & _$vue.VNodeProps & _$vue.AllowedComponentProps & _$vue.ComponentCustomProps & (new () => {
|
|
152
|
-
$slots: {
|
|
153
|
-
default?: (props: {}) => any;
|
|
154
|
-
};
|
|
155
|
-
});
|
|
4
|
+
declare const QueryFormItem: any;
|
|
156
5
|
//#endregion
|
|
157
6
|
export { QueryFormItem };
|
|
158
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -5,9 +5,9 @@ import { useQueryFormForm } from "../query-form/hooks.mjs";
|
|
|
5
5
|
import QueryForm from "../query-form/index.mjs";
|
|
6
6
|
import { ElPagination } from "element-plus";
|
|
7
7
|
import { computed, createBlock, createCommentVNode, createElementVNode, defineComponent, guardReactiveProps, mergeProps, normalizeClass, normalizeProps, onMounted, openBlock, ref, renderSlot, resolveDynamicComponent, unref, watch, withCtx } from "vue";
|
|
8
|
-
import { createForm } from "@formily/core";
|
|
8
|
+
import { createForm } from "@silver-formily/core";
|
|
9
9
|
import { useField } from "@silver-formily/vue";
|
|
10
|
-
import { isNum } from "@formily/shared";
|
|
10
|
+
import { isNum } from "@silver-formily/shared";
|
|
11
11
|
//#region src/query-form-item/query-form-item.vue
|
|
12
12
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
13
13
|
name: "FQueryFormItem",
|