@silver-formily/element-plus 2.0.1 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en-US.md +32 -0
- package/README.md +32 -35
- package/esm/__builtins__/index.mjs +15 -16
- package/esm/__builtins__/shared/index.mjs +11 -12
- package/esm/__builtins__/shared/transform-component.d.ts +2 -6
- package/esm/__builtins__/shared/transform-component.mjs +16 -33
- package/esm/__builtins__/shared/transform-component.mjs.map +1 -1
- package/esm/__builtins__/shared/utils.mjs +10 -10
- package/esm/__builtins__/shared/utils.mjs.map +1 -1
- package/esm/array-base/index.mjs +58 -58
- package/esm/array-base/index.mjs.map +1 -1
- package/esm/array-cards/index.mjs +44 -44
- package/esm/array-cards/index.mjs.map +1 -1
- package/esm/array-collapse/index.mjs +59 -58
- package/esm/array-collapse/index.mjs.map +1 -1
- package/esm/array-items/index.mjs +46 -43
- package/esm/array-items/index.mjs.map +1 -1
- package/esm/array-list-tabs/index.mjs +15 -14
- package/esm/array-list-tabs/index.mjs.map +1 -1
- package/esm/array-table/array-table.d.ts +28 -0
- package/esm/array-table/index.d.ts +28 -0
- package/esm/array-table/index.mjs +113 -111
- package/esm/array-table/index.mjs.map +1 -1
- package/esm/array-table/types.d.ts +1 -0
- package/esm/cascader/index.mjs +19 -20
- package/esm/cascader/index.mjs.map +1 -1
- package/esm/checkbox/checkbox-group.d.ts +1 -4
- package/esm/checkbox/index.d.ts +442 -379
- package/esm/checkbox/index.mjs.map +1 -1
- package/esm/editable/editable.d.ts +16 -12
- package/esm/editable/index.d.ts +8 -6
- package/esm/editable/index.mjs +110 -112
- package/esm/editable/index.mjs.map +1 -1
- package/esm/form-button-group/index.mjs +29 -28
- package/esm/form-button-group/index.mjs.map +1 -1
- package/esm/form-collapse/index.mjs +42 -43
- package/esm/form-collapse/index.mjs.map +1 -1
- package/esm/form-dialog/index.d.ts +1 -1
- package/esm/form-dialog/index.mjs +4 -4
- package/esm/form-dialog/index.mjs.map +1 -1
- package/esm/form-dialog/types.d.ts +6 -6
- package/esm/form-drawer/index.d.ts +1 -1
- package/esm/form-drawer/index.mjs +4 -4
- package/esm/form-drawer/index.mjs.map +1 -1
- package/esm/form-drawer/types.d.ts +6 -6
- package/esm/form-grid/index.d.ts +1 -183
- package/esm/form-grid/index.mjs +1 -1
- package/esm/form-grid/index.mjs.map +1 -1
- package/esm/form-item/form-item.d.ts +2 -1
- package/esm/form-item/index.d.ts +12 -6
- package/esm/form-item/index.mjs +163 -155
- package/esm/form-item/index.mjs.map +1 -1
- package/esm/form-item/types.d.ts +0 -1
- package/esm/form-layout/form-layout.d.ts +0 -1
- package/esm/form-layout/form-layout.mjs +53 -52
- package/esm/form-layout/form-layout.mjs.map +1 -1
- package/esm/form-layout/types.d.ts +0 -2
- package/esm/form-layout/utils.d.ts +3 -3
- package/esm/form-layout/utils.mjs +48 -43
- package/esm/form-layout/utils.mjs.map +1 -1
- package/esm/form-step/index.mjs +27 -25
- package/esm/form-step/index.mjs.map +1 -1
- package/esm/form-tab/index.d.ts +1 -26
- package/esm/form-tab/index.mjs +30 -30
- package/esm/form-tab/index.mjs.map +1 -1
- package/esm/index.d.ts +3 -0
- package/esm/index.mjs +44 -38
- package/esm/index.mjs.map +1 -1
- package/esm/input/index.mjs.map +1 -1
- package/esm/input-number/index.d.ts +258 -147
- package/esm/pagination/pagination.mjs +109 -110
- package/esm/pagination/pagination.mjs.map +1 -1
- package/esm/password/index.mjs.map +1 -1
- package/esm/preview-text/index.d.ts +5 -0
- package/esm/preview-text/index.mjs +165 -141
- package/esm/preview-text/index.mjs.map +1 -1
- package/esm/preview-text/rate.d.ts +5 -0
- package/esm/preview-text/utils.d.ts +5 -5
- package/esm/preview-text/utils.mjs.map +1 -1
- package/esm/radio/index.d.ts +344 -194
- package/esm/radio/index.mjs.map +1 -1
- package/esm/rate/index.d.ts +187 -0
- package/esm/rate/index.mjs +14 -0
- package/esm/rate/index.mjs.map +1 -0
- package/esm/reset/index.d.ts +1 -62
- package/esm/reset/index.mjs +1 -1
- package/esm/reset/index.mjs.map +1 -1
- package/esm/segmented/index.d.ts +26 -0
- package/esm/segmented/index.mjs +37 -0
- package/esm/segmented/index.mjs.map +1 -0
- package/esm/segmented/segmented.d.ts +25 -0
- package/esm/select/index.mjs +8 -8
- package/esm/select/index.mjs.map +1 -1
- package/esm/select-table/index.d.ts +28 -0
- package/esm/select-table/index.mjs +48 -47
- package/esm/select-table/index.mjs.map +1 -1
- package/esm/select-table/select-table.d.ts +56 -0
- package/esm/slider/index.d.ts +177 -0
- package/esm/slider/index.mjs +14 -0
- package/esm/slider/index.mjs.map +1 -0
- package/esm/submit/index.d.ts +1 -47
- package/esm/submit/index.mjs +1 -1
- package/esm/submit/index.mjs.map +1 -1
- package/esm/switch/index.d.ts +225 -189
- package/esm/time-select/index.d.ts +163 -103
- package/esm/transfer/index.d.ts +196 -115
- package/esm/transfer/index.mjs.map +1 -1
- package/esm/tree/index.mjs +26 -26
- package/esm/tree/index.mjs.map +1 -1
- package/esm/tree-select/index.mjs.map +1 -1
- package/esm/upload/index.d.ts +404 -399
- package/esm/upload/index.mjs.map +1 -1
- package/esm/upload/upload.d.ts +800 -790
- package/esm/vendor/icon.mjs.map +1 -1
- package/esm/vendor/lodash.mjs +12 -20
- package/esm/vendor/lodash.mjs.map +1 -1
- package/esm/vendor/runtime.mjs +29 -24
- package/esm/vendor/runtime.mjs.map +1 -1
- package/esm/vendor/shared.esm-bundler.mjs +2 -2
- package/esm/vendor/sizes.mjs.map +1 -1
- package/esm/vendor/types.mjs +5 -5
- package/esm/vendor/types.mjs.map +1 -1
- package/package.json +8 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/checkbox/checkbox-group.vue","../../src/checkbox/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { CheckboxProps } from 'element-plus'\r\nimport type { PropType } from 'vue'\r\nimport { isPlainObj } from '@formily/shared'\r\nimport { ElCheckbox, ElCheckboxButton, ElCheckboxGroup, version } from 'element-plus'\r\nimport { computed, useSlots } from 'vue'\r\nimport { lt, useCleanAttrs } from '../__builtins__'\r\n\r\ndefineOptions({\r\n name: 'FCheckboxGroup',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps({\r\n options: {\r\n type: Array as PropType<Array<CheckboxProps>>,\r\n default: () => [],\r\n },\r\n optionType: {\r\n type: String as PropType<'default' | 'button'>,\r\n default: 'default',\r\n },\r\n})\r\n\r\nconst OptionType = computed(() => {\r\n return props.optionType === 'button' ? ElCheckboxButton : ElCheckbox\r\n})\r\nconst IS_LESS_THAN_2_6_0 = lt(version, '2.6.0')\r\nconst compatiableProps = computed(() => {\r\n return props.options.map((option) => {\r\n if (!isPlainObj(option)) {\r\n return {\r\n label: option,\r\n value: option,\r\n }\r\n }\r\n /* istanbul ignore if -- @preserve */\r\n if (IS_LESS_THAN_2_6_0) {\r\n return {\r\n ...option,\r\n label: option.value,\r\n }\r\n }\r\n return option\r\n })\r\n})\r\n\r\nconst slots = useSlots()\r\nconst { props: checkboxProps } = useCleanAttrs()\r\n</script>\r\n\r\n<template>\r\n <ElCheckboxGroup v-bind=\"checkboxProps\">\r\n <template v-if=\"!slots.option\">\r\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\r\n {{ isPlainObj(props.options[index]) ? props.options[index]?.label : option.label }}\r\n </component>\r\n </template>\r\n <template v-else>\r\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\r\n <slot name=\"option\" :option=\"option\" />\r\n </component>\r\n </template>\r\n </ElCheckboxGroup>\r\n</template>\r\n","import { connect, mapProps } from '@silver-formily/vue'\r\nimport { ElCheckbox } from 'element-plus'\r\nimport { composeExport, mapReadPretty } from '../__builtins__'\r\nimport { PreviewText } from '../preview-text'\r\nimport FCheckboxGroup from './checkbox-group.vue'\r\n\r\nconst CheckboxGroup = connect(\r\n FCheckboxGroup,\r\n mapProps({ dataSource: 'options', disabled: true }),\r\n mapReadPretty(PreviewText.Select, {\r\n multiple: true,\r\n }),\r\n)\r\n\r\nconst InnerCheckbox = connect(\r\n ElCheckbox,\r\n mapProps({\r\n disabled: true,\r\n }),\r\n)\r\n\r\nexport const Checkbox = composeExport(InnerCheckbox, {\r\n Group: CheckboxGroup,\r\n})\r\n\r\nexport default Checkbox\r\n"],"names":["props","__props","OptionType","computed","ElCheckboxButton","ElCheckbox","IS_LESS_THAN_2_6_0","lt","version","compatiableProps","option","isPlainObj","slots","useSlots","checkboxProps","useCleanAttrs","_openBlock","_createBlock","_unref","_createElementBlock","_Fragment","_renderList","index","_resolveDynamicComponent","_mergeProps","_renderSlot","_ctx","_createTextVNode","_toDisplayString","CheckboxGroup","connect","FCheckboxGroup","mapProps","mapReadPretty","PreviewText","InnerCheckbox","Checkbox","composeExport"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAaA,UAAMA,IAAQC,GAWRC,IAAaC,EAAS,MACnBH,EAAM,eAAe,WAAWI,IAAmBC,CAC3D,GACKC,IAAqBC,EAAGC,GAAS,OAAO,GACxCC,IAAmBN,EAAS,MACzBH,EAAM,QAAQ,IAAI,CAACU,MAAW;AACnC,UAAI,CAACC,EAAWD,CAAM;AACpB,eAAO;AAAA,UACL,OAAOA;AAAA,UACP,OAAOA;AAAA,QAAA;AAAA,MAEX;AAEA,aAAIJ,IACK;AAAA,QACL,GAAGI;AAAA,QACH,OAAOA,EAAO;AAAA,MAAA,IAGXA;AAAA,IACT,CAAC,CACF,GAEKE,IAAQC,EAAA,GACR,EAAE,OAAOC,EAAA,IAAkBC,EAAA;sBAI/BC,EAAA,GAAAC,EAWkBC,UAXOA,EAAAJ,CAAA,CAAa,CAAA,GAAA;AAAA,iBACpC,MAIW;AAAA,QAJMI,EAAAN,CAAA,EAAM,UAMrBI,EAAA,EAAA,GAAAG,EAEYC,GAAA,EAAA,KAAA,KAAAC,EAF0CZ,EAAA,OAAgB,CAAlCC,GAAQY,YAA5CL,EAEYM,EAFIrB,OAAU,GAA1BsB,EAEY,EAF6D,KAAKF,KAAK,EAAA,SAAA,GAAA,GAAUZ,CAAM,GAAA;AAAA,qBACjG,MAAuC;AAAA,YAAvCe,EAAuCC,EAAA,QAAA,UAAA,EAAlB,QAAAhB,GAAc;AAAA,UAAA;;6BANrCM,EAAA,EAAA,GAAAG,EAEYC,GAAA,EAAA,KAAA,KAAAC,EAF0CZ,EAAA,OAAgB,CAAlCC,GAAQY,YAA5CL,EAEYM,EAFIrB,OAAU,GAA1BsB,EAEY,EAF6D,KAAKF,KAAK,EAAA,SAAA,GAAA,GAAUZ,CAAM,GAAA;AAAA,qBACjG,MAAmF;AAAA,YAAhFiB,EAAAC,EAAAV,EAAAP,CAAA,EAAWX,EAAM,QAAQsB,CAAK,CAAA,IAAKtB,EAAM,QAAQsB,CAAK,GAAG,QAAQZ,EAAO,KAAK,GAAA,CAAA;AAAA,UAAA;;;;;;;ICjDlFmB,IAAgBC;AAAA,EACpBC;AAAAA,EACAC,EAAS,EAAE,YAAY,WAAW,UAAU,IAAM;AAAA,EAClDC,EAAcC,EAAY,QAAQ;AAAA,IAChC,UAAU;AAAA,EAAA,CACX;AACH,GAEMC,IAAgBL;AAAA,EACpBzB;AAAA,EACA2B,EAAS;AAAA,IACP,UAAU;AAAA,EAAA,CACX;AACH,GAEaI,IAAWC,EAAcF,GAAe;AAAA,EACnD,OAAON;AACT,CAAC;"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/checkbox/checkbox-group.vue","../../src/checkbox/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { CheckboxProps } from 'element-plus'\r\nimport type { PropType } from 'vue'\r\nimport { isPlainObj } from '@formily/shared'\r\nimport { ElCheckbox, ElCheckboxButton, ElCheckboxGroup, version } from 'element-plus'\r\nimport { computed, useSlots } from 'vue'\r\nimport { lt, useCleanAttrs } from '../__builtins__'\r\n\r\ndefineOptions({\r\n name: 'FCheckboxGroup',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps({\r\n options: {\r\n type: Array as PropType<Array<CheckboxProps>>,\r\n default: () => [],\r\n },\r\n optionType: {\r\n type: String as PropType<'default' | 'button'>,\r\n default: 'default',\r\n },\r\n})\r\n\r\nconst OptionType = computed(() => {\r\n return props.optionType === 'button' ? ElCheckboxButton : ElCheckbox\r\n})\r\nconst IS_LESS_THAN_2_6_0 = lt(version, '2.6.0')\r\nconst compatiableProps = computed(() => {\r\n return props.options.map((option) => {\r\n if (!isPlainObj(option)) {\r\n return {\r\n label: option,\r\n value: option,\r\n }\r\n }\r\n /* istanbul ignore if -- @preserve */\r\n if (IS_LESS_THAN_2_6_0) {\r\n return {\r\n ...option,\r\n label: option.value,\r\n }\r\n }\r\n return option\r\n })\r\n})\r\n\r\nconst slots = useSlots()\r\nconst { props: checkboxProps } = useCleanAttrs()\r\n</script>\r\n\r\n<template>\r\n <ElCheckboxGroup v-bind=\"checkboxProps\">\r\n <template v-if=\"!slots.option\">\r\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\r\n {{ isPlainObj(props.options[index]) ? props.options[index]?.label : option.label }}\r\n </component>\r\n </template>\r\n <template v-else>\r\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\r\n <slot name=\"option\" :option=\"option\" />\r\n </component>\r\n </template>\r\n </ElCheckboxGroup>\r\n</template>\r\n","import { connect, mapProps } from '@silver-formily/vue'\r\nimport { ElCheckbox } from 'element-plus'\r\nimport { composeExport, mapReadPretty } from '../__builtins__'\r\nimport { PreviewText } from '../preview-text'\r\nimport FCheckboxGroup from './checkbox-group.vue'\r\n\r\nconst CheckboxGroup = connect<typeof FCheckboxGroup>(\r\n FCheckboxGroup,\r\n mapProps({ dataSource: 'options', disabled: true }),\r\n mapReadPretty(PreviewText.Select, {\r\n multiple: true,\r\n }),\r\n)\r\n\r\nconst InnerCheckbox = connect<typeof ElCheckbox>(\r\n ElCheckbox,\r\n mapProps({\r\n disabled: true,\r\n }),\r\n)\r\n\r\nexport const Checkbox = composeExport(InnerCheckbox, {\r\n Group: CheckboxGroup,\r\n})\r\n\r\nexport default Checkbox\r\n"],"names":["props","__props","OptionType","computed","ElCheckboxButton","ElCheckbox","IS_LESS_THAN_2_6_0","lt","version","compatiableProps","option","isPlainObj","slots","useSlots","checkboxProps","useCleanAttrs","_openBlock","_createBlock","_unref","_createElementBlock","_Fragment","_renderList","index","_resolveDynamicComponent","_mergeProps","_renderSlot","_ctx","_createTextVNode","_toDisplayString","CheckboxGroup","connect","FCheckboxGroup","mapProps","mapReadPretty","PreviewText","InnerCheckbox","Checkbox","composeExport"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAaA,UAAMA,IAAQC,GAWRC,IAAaC,EAAS,MACnBH,EAAM,eAAe,WAAWI,IAAmBC,CAC3D,GACKC,IAAqBC,EAAGC,GAAS,OAAO,GACxCC,IAAmBN,EAAS,MACzBH,EAAM,QAAQ,IAAI,CAACU,MAAW;AACnC,UAAI,CAACC,EAAWD,CAAM;AACpB,eAAO;AAAA,UACL,OAAOA;AAAA,UACP,OAAOA;AAAA,QAAA;AAAA,MAEX;AAEA,aAAIJ,IACK;AAAA,QACL,GAAGI;AAAA,QACH,OAAOA,EAAO;AAAA,MAAA,IAGXA;AAAA,IACT,CAAC,CACF,GAEKE,IAAQC,EAAA,GACR,EAAE,OAAOC,EAAA,IAAkBC,EAAA;sBAI/BC,EAAA,GAAAC,EAWkBC,UAXOA,EAAAJ,CAAA,CAAa,CAAA,GAAA;AAAA,iBACpC,MAIW;AAAA,QAJMI,EAAAN,CAAA,EAAM,UAMrBI,EAAA,EAAA,GAAAG,EAEYC,GAAA,EAAA,KAAA,KAAAC,EAF0CZ,EAAA,OAAgB,CAAlCC,GAAQY,YAA5CL,EAEYM,EAFIrB,OAAU,GAA1BsB,EAEY,EAF6D,KAAKF,KAAK,EAAA,SAAA,GAAA,GAAUZ,CAAM,GAAA;AAAA,qBACjG,MAAuC;AAAA,YAAvCe,EAAuCC,EAAA,QAAA,UAAA,EAAlB,QAAAhB,GAAc;AAAA,UAAA;;6BANrCM,EAAA,EAAA,GAAAG,EAEYC,GAAA,EAAA,KAAA,KAAAC,EAF0CZ,EAAA,OAAgB,CAAlCC,GAAQY,YAA5CL,EAEYM,EAFIrB,OAAU,GAA1BsB,EAEY,EAF6D,KAAKF,KAAK,EAAA,SAAA,GAAA,GAAUZ,CAAM,GAAA;AAAA,qBACjG,MAAmF;AAAA,YAAhFiB,EAAAC,EAAAV,EAAAP,CAAA,EAAWX,EAAM,QAAQsB,CAAK,CAAA,IAAKtB,EAAM,QAAQsB,CAAK,GAAG,QAAQZ,EAAO,KAAK,GAAA,CAAA;AAAA,UAAA;;;;;;;ICjDlFmB,IAAgBC;AAAA,EACpBC;AAAAA,EACAC,EAAS,EAAE,YAAY,WAAW,UAAU,IAAM;AAAA,EAClDC,EAAcC,EAAY,QAAQ;AAAA,IAChC,UAAU;AAAA,EAAA,CACX;AACH,GAEMC,IAAgBL;AAAA,EACpBzB;AAAA,EACA2B,EAAS;AAAA,IACP,UAAU;AAAA,EAAA,CACX;AACH,GAEaI,IAAWC,EAAcF,GAAe;AAAA,EACnD,OAAON;AACT,CAAC;"}
|
|
@@ -14,9 +14,10 @@ declare function __VLS_template(): {
|
|
|
14
14
|
$: import('vue').ComponentInternalInstance;
|
|
15
15
|
$data: {};
|
|
16
16
|
$props: Partial<{
|
|
17
|
+
asterisk: boolean;
|
|
17
18
|
colon: boolean;
|
|
19
|
+
labelWrap: boolean;
|
|
18
20
|
fullness: boolean;
|
|
19
|
-
feedbackLayout: "loose" | "terse" | "popover";
|
|
20
21
|
}> & Omit<{
|
|
21
22
|
readonly label?: string;
|
|
22
23
|
readonly for?: string;
|
|
@@ -33,7 +34,6 @@ declare function __VLS_template(): {
|
|
|
33
34
|
readonly labelWrap?: boolean;
|
|
34
35
|
readonly labelWidth?: number;
|
|
35
36
|
readonly wrapperWidth?: number;
|
|
36
|
-
readonly wrapperWrap?: boolean;
|
|
37
37
|
readonly labelCol?: number;
|
|
38
38
|
readonly wrapperCol?: number;
|
|
39
39
|
readonly fullness?: boolean;
|
|
@@ -41,7 +41,7 @@ declare function __VLS_template(): {
|
|
|
41
41
|
readonly layout?: "vertical" | "horizontal" | "inline" | ("vertical" | "horizontal" | "inline")[];
|
|
42
42
|
readonly feedbackLayout?: "loose" | "terse" | "popover";
|
|
43
43
|
readonly tooltipLayout?: "icon" | "text";
|
|
44
|
-
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "colon" | "
|
|
44
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "asterisk" | "colon" | "labelWrap" | "fullness">;
|
|
45
45
|
$attrs: {
|
|
46
46
|
[x: string]: unknown;
|
|
47
47
|
};
|
|
@@ -57,9 +57,10 @@ declare function __VLS_template(): {
|
|
|
57
57
|
$options: import('vue').ComponentOptionsBase<Readonly<IFormItemProps> & Readonly<{}>, {
|
|
58
58
|
feedbackTooltipRef: import('vue').Ref<import('element-plus').TooltipInstance, import('element-plus').TooltipInstance>;
|
|
59
59
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
|
|
60
|
+
asterisk: boolean;
|
|
60
61
|
colon: boolean;
|
|
62
|
+
labelWrap: boolean;
|
|
61
63
|
fullness: boolean;
|
|
62
|
-
feedbackLayout: "loose" | "terse" | "popover";
|
|
63
64
|
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
|
|
64
65
|
beforeCreate?: (() => void) | (() => void)[];
|
|
65
66
|
created?: (() => void) | (() => void)[];
|
|
@@ -81,10 +82,11 @@ declare function __VLS_template(): {
|
|
|
81
82
|
$nextTick: typeof nextTick;
|
|
82
83
|
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
|
|
83
84
|
} & Readonly<{
|
|
85
|
+
asterisk: boolean;
|
|
84
86
|
colon: boolean;
|
|
87
|
+
labelWrap: boolean;
|
|
85
88
|
fullness: boolean;
|
|
86
|
-
|
|
87
|
-
}> & Omit<Readonly<IFormItemProps> & Readonly<{}>, ("colon" | "fullness" | "feedbackLayout") | "feedbackTooltipRef"> & import('vue').ShallowUnwrapRef<{
|
|
89
|
+
}> & Omit<Readonly<IFormItemProps> & Readonly<{}>, ("asterisk" | "colon" | "labelWrap" | "fullness") | "feedbackTooltipRef"> & import('vue').ShallowUnwrapRef<{
|
|
88
90
|
feedbackTooltipRef: import('vue').Ref<import('element-plus').TooltipInstance, import('element-plus').TooltipInstance>;
|
|
89
91
|
}> & {} & import('vue').ComponentCustomProperties & {} & {
|
|
90
92
|
$slots: any;
|
|
@@ -102,9 +104,10 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}
|
|
|
102
104
|
$: import('vue').ComponentInternalInstance;
|
|
103
105
|
$data: {};
|
|
104
106
|
$props: Partial<{
|
|
107
|
+
asterisk: boolean;
|
|
105
108
|
colon: boolean;
|
|
109
|
+
labelWrap: boolean;
|
|
106
110
|
fullness: boolean;
|
|
107
|
-
feedbackLayout: "loose" | "terse" | "popover";
|
|
108
111
|
}> & Omit<{
|
|
109
112
|
readonly label?: string;
|
|
110
113
|
readonly for?: string;
|
|
@@ -121,7 +124,6 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}
|
|
|
121
124
|
readonly labelWrap?: boolean;
|
|
122
125
|
readonly labelWidth?: number;
|
|
123
126
|
readonly wrapperWidth?: number;
|
|
124
|
-
readonly wrapperWrap?: boolean;
|
|
125
127
|
readonly labelCol?: number;
|
|
126
128
|
readonly wrapperCol?: number;
|
|
127
129
|
readonly fullness?: boolean;
|
|
@@ -129,7 +131,7 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}
|
|
|
129
131
|
readonly layout?: "vertical" | "horizontal" | "inline" | ("vertical" | "horizontal" | "inline")[];
|
|
130
132
|
readonly feedbackLayout?: "loose" | "terse" | "popover";
|
|
131
133
|
readonly tooltipLayout?: "icon" | "text";
|
|
132
|
-
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "colon" | "
|
|
134
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "asterisk" | "colon" | "labelWrap" | "fullness">;
|
|
133
135
|
$attrs: {
|
|
134
136
|
[x: string]: unknown;
|
|
135
137
|
};
|
|
@@ -145,9 +147,10 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}
|
|
|
145
147
|
$options: import('vue').ComponentOptionsBase<Readonly<IFormItemProps> & Readonly<{}>, {
|
|
146
148
|
feedbackTooltipRef: import('vue').Ref<import('element-plus').TooltipInstance, import('element-plus').TooltipInstance>;
|
|
147
149
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
|
|
150
|
+
asterisk: boolean;
|
|
148
151
|
colon: boolean;
|
|
152
|
+
labelWrap: boolean;
|
|
149
153
|
fullness: boolean;
|
|
150
|
-
feedbackLayout: "loose" | "terse" | "popover";
|
|
151
154
|
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
|
|
152
155
|
beforeCreate?: (() => void) | (() => void)[];
|
|
153
156
|
created?: (() => void) | (() => void)[];
|
|
@@ -169,10 +172,11 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}
|
|
|
169
172
|
$nextTick: typeof nextTick;
|
|
170
173
|
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
|
|
171
174
|
} & Readonly<{
|
|
175
|
+
asterisk: boolean;
|
|
172
176
|
colon: boolean;
|
|
177
|
+
labelWrap: boolean;
|
|
173
178
|
fullness: boolean;
|
|
174
|
-
|
|
175
|
-
}> & Omit<Readonly<IFormItemProps> & Readonly<{}>, ("colon" | "fullness" | "feedbackLayout") | "feedbackTooltipRef"> & import('vue').ShallowUnwrapRef<{
|
|
179
|
+
}> & Omit<Readonly<IFormItemProps> & Readonly<{}>, ("asterisk" | "colon" | "labelWrap" | "fullness") | "feedbackTooltipRef"> & import('vue').ShallowUnwrapRef<{
|
|
176
180
|
feedbackTooltipRef: import('vue').Ref<import('element-plus').TooltipInstance, import('element-plus').TooltipInstance>;
|
|
177
181
|
}> & {} & import('vue').ComponentCustomProperties & {} & {
|
|
178
182
|
$slots: any;
|
package/esm/editable/index.d.ts
CHANGED
|
@@ -14,9 +14,10 @@ export declare const Editable: {
|
|
|
14
14
|
$: import('vue').ComponentInternalInstance;
|
|
15
15
|
$data: {};
|
|
16
16
|
$props: Partial<{
|
|
17
|
+
asterisk: boolean;
|
|
17
18
|
colon: boolean;
|
|
19
|
+
labelWrap: boolean;
|
|
18
20
|
fullness: boolean;
|
|
19
|
-
feedbackLayout: "loose" | "terse" | "popover";
|
|
20
21
|
}> & Omit<{
|
|
21
22
|
readonly label?: string;
|
|
22
23
|
readonly for?: string;
|
|
@@ -33,7 +34,6 @@ export declare const Editable: {
|
|
|
33
34
|
readonly labelWrap?: boolean;
|
|
34
35
|
readonly labelWidth?: number;
|
|
35
36
|
readonly wrapperWidth?: number;
|
|
36
|
-
readonly wrapperWrap?: boolean;
|
|
37
37
|
readonly labelCol?: number;
|
|
38
38
|
readonly wrapperCol?: number;
|
|
39
39
|
readonly fullness?: boolean;
|
|
@@ -41,7 +41,7 @@ export declare const Editable: {
|
|
|
41
41
|
readonly layout?: "vertical" | "horizontal" | "inline" | ("vertical" | "horizontal" | "inline")[];
|
|
42
42
|
readonly feedbackLayout?: "loose" | "terse" | "popover";
|
|
43
43
|
readonly tooltipLayout?: "icon" | "text";
|
|
44
|
-
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "colon" | "
|
|
44
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "asterisk" | "colon" | "labelWrap" | "fullness">;
|
|
45
45
|
$attrs: {
|
|
46
46
|
[x: string]: unknown;
|
|
47
47
|
};
|
|
@@ -57,9 +57,10 @@ export declare const Editable: {
|
|
|
57
57
|
$options: import('vue').ComponentOptionsBase<Readonly<IFormItemProps> & Readonly<{}>, {
|
|
58
58
|
feedbackTooltipRef: import('vue').Ref<import('element-plus').TooltipInstance, import('element-plus').TooltipInstance>;
|
|
59
59
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
|
|
60
|
+
asterisk: boolean;
|
|
60
61
|
colon: boolean;
|
|
62
|
+
labelWrap: boolean;
|
|
61
63
|
fullness: boolean;
|
|
62
|
-
feedbackLayout: "loose" | "terse" | "popover";
|
|
63
64
|
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
|
|
64
65
|
beforeCreate?: (() => void) | (() => void)[];
|
|
65
66
|
created?: (() => void) | (() => void)[];
|
|
@@ -81,10 +82,11 @@ export declare const Editable: {
|
|
|
81
82
|
$nextTick: typeof import('vue').nextTick;
|
|
82
83
|
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
|
|
83
84
|
} & Readonly<{
|
|
85
|
+
asterisk: boolean;
|
|
84
86
|
colon: boolean;
|
|
87
|
+
labelWrap: boolean;
|
|
85
88
|
fullness: boolean;
|
|
86
|
-
|
|
87
|
-
}> & Omit<Readonly<IFormItemProps> & Readonly<{}>, ("colon" | "fullness" | "feedbackLayout") | "feedbackTooltipRef"> & import('vue').ShallowUnwrapRef<{
|
|
89
|
+
}> & Omit<Readonly<IFormItemProps> & Readonly<{}>, ("asterisk" | "colon" | "labelWrap" | "fullness") | "feedbackTooltipRef"> & import('vue').ShallowUnwrapRef<{
|
|
88
90
|
feedbackTooltipRef: import('vue').Ref<import('element-plus').TooltipInstance, import('element-plus').TooltipInstance>;
|
|
89
91
|
}> & {} & import('vue').ComponentCustomProperties & {} & {
|
|
90
92
|
$slots: any;
|
package/esm/editable/index.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { useField as
|
|
2
|
-
import { FormBaseItem as
|
|
3
|
-
import { defineComponent as z, ref as m, createElementBlock as
|
|
4
|
-
import { Edit as
|
|
1
|
+
import { useField as E, connect as h, mapProps as w } from "@silver-formily/vue";
|
|
2
|
+
import { FormBaseItem as c, fieldFeedbackMapper as R } from "../form-item/index.mjs";
|
|
3
|
+
import { defineComponent as z, ref as m, createElementBlock as p, openBlock as d, normalizeClass as i, createVNode as u, unref as t, mergeProps as P, withCtx as n, withDirectives as T, createBlock as _, createElementVNode as C, createTextVNode as S, toDisplayString as V, renderSlot as A, computed as g, createCommentVNode as q, Fragment as I, nextTick as x } from "vue";
|
|
4
|
+
import { Edit as F, Close as N } from "@element-plus/icons-vue";
|
|
5
5
|
import { reaction as D } from "@formily/reactive";
|
|
6
|
-
import { isValid as
|
|
7
|
-
import { ElPopover as j, ElText as G, ClickOutside as
|
|
8
|
-
import { stylePrefix as
|
|
6
|
+
import { isValid as $, isPlainObj as M } from "@formily/shared";
|
|
7
|
+
import { ElPopover as j, ElText as G, ClickOutside as L } from "element-plus";
|
|
8
|
+
import { stylePrefix as W } from "../__builtins__/configs/index.mjs";
|
|
9
9
|
import { o as k } from "../vendor/lodash.mjs";
|
|
10
10
|
import { composeExport as H } from "../__builtins__/shared/utils.mjs";
|
|
11
11
|
import '../styles/editable/index.css';const J = /* @__PURE__ */ z({
|
|
@@ -13,94 +13,93 @@ import '../styles/editable/index.css';const J = /* @__PURE__ */ z({
|
|
|
13
13
|
inheritAttrs: !1,
|
|
14
14
|
__name: "editable-popover",
|
|
15
15
|
props: {
|
|
16
|
-
label:
|
|
17
|
-
for:
|
|
18
|
-
tooltip:
|
|
19
|
-
addonBefore:
|
|
20
|
-
addonAfter:
|
|
21
|
-
extra:
|
|
22
|
-
feedbackText:
|
|
23
|
-
feedbackStatus:
|
|
16
|
+
label: {},
|
|
17
|
+
for: {},
|
|
18
|
+
tooltip: {},
|
|
19
|
+
addonBefore: {},
|
|
20
|
+
addonAfter: {},
|
|
21
|
+
extra: {},
|
|
22
|
+
feedbackText: {},
|
|
23
|
+
feedbackStatus: {},
|
|
24
24
|
asterisk: { type: Boolean },
|
|
25
25
|
colon: { type: Boolean },
|
|
26
|
-
labelAlign:
|
|
27
|
-
wrapperAlign:
|
|
26
|
+
labelAlign: {},
|
|
27
|
+
wrapperAlign: {},
|
|
28
28
|
labelWrap: { type: Boolean },
|
|
29
|
-
labelWidth:
|
|
30
|
-
wrapperWidth:
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
wrapperCol: null,
|
|
29
|
+
labelWidth: {},
|
|
30
|
+
wrapperWidth: {},
|
|
31
|
+
labelCol: {},
|
|
32
|
+
wrapperCol: {},
|
|
34
33
|
fullness: { type: Boolean },
|
|
35
34
|
size: { default: "default" },
|
|
36
|
-
layout:
|
|
35
|
+
layout: {},
|
|
37
36
|
feedbackLayout: { default: "popover" },
|
|
38
|
-
tooltipLayout:
|
|
37
|
+
tooltipLayout: {}
|
|
39
38
|
},
|
|
40
39
|
setup(b) {
|
|
41
|
-
const
|
|
42
|
-
if (
|
|
40
|
+
const a = b, e = E(), l = `${W}-editable`, s = m(), r = m(!1);
|
|
41
|
+
if ($(e.value.data)) {
|
|
43
42
|
/* istanbul ignore else -- @preserve */
|
|
44
|
-
|
|
43
|
+
$(e.value.data.readPretty) || (e.value.data.readPretty = !0);
|
|
45
44
|
} else
|
|
46
45
|
e.value.data = {}, e.value.data.readPretty = !0;
|
|
47
|
-
function
|
|
48
|
-
const
|
|
46
|
+
function v(o) {
|
|
47
|
+
const f = s.value.parentElement;
|
|
49
48
|
/* istanbul ignore else -- @preserve */
|
|
50
|
-
|
|
49
|
+
f.contains(o.target) || (r.value = !1);
|
|
51
50
|
}
|
|
52
|
-
function
|
|
53
|
-
|
|
51
|
+
function y() {
|
|
52
|
+
r.value = !0;
|
|
54
53
|
}
|
|
55
54
|
return D(
|
|
56
55
|
() => e.value.form.queryFeedbacks({
|
|
57
56
|
type: "error",
|
|
58
57
|
address: `${e.value.address.entire}.*`
|
|
59
58
|
}),
|
|
60
|
-
(
|
|
61
|
-
|
|
59
|
+
(o) => {
|
|
60
|
+
o.length > 0 && (r.value = !0);
|
|
62
61
|
}
|
|
63
|
-
), (
|
|
64
|
-
class:
|
|
62
|
+
), (o, f) => (d(), p("div", {
|
|
63
|
+
class: i(l)
|
|
65
64
|
}, [
|
|
66
|
-
|
|
67
|
-
visible:
|
|
68
|
-
title:
|
|
65
|
+
u(t(j), P(o.$attrs, {
|
|
66
|
+
visible: r.value,
|
|
67
|
+
title: o.$attrs.title || t(e).title,
|
|
69
68
|
trigger: "click",
|
|
70
69
|
width: "auto"
|
|
71
70
|
}), {
|
|
72
|
-
default:
|
|
71
|
+
default: n(() => [
|
|
73
72
|
C("div", {
|
|
74
73
|
ref_key: "contentRef",
|
|
75
|
-
ref:
|
|
76
|
-
class:
|
|
74
|
+
ref: s,
|
|
75
|
+
class: i(`${l}-popover-wrapper`)
|
|
77
76
|
}, [
|
|
78
|
-
|
|
77
|
+
A(o.$slots, "default")
|
|
79
78
|
], 2)
|
|
80
79
|
]),
|
|
81
|
-
reference:
|
|
82
|
-
T((
|
|
83
|
-
class: `${
|
|
80
|
+
reference: n(() => [
|
|
81
|
+
T((d(), _(t(c), P(a, {
|
|
82
|
+
class: `${l}-trigger`
|
|
84
83
|
}), {
|
|
85
|
-
default:
|
|
84
|
+
default: n(() => [
|
|
86
85
|
C("div", {
|
|
87
|
-
class:
|
|
88
|
-
onClick:
|
|
86
|
+
class: i(`${l}-content`),
|
|
87
|
+
onClick: y
|
|
89
88
|
}, [
|
|
90
|
-
|
|
91
|
-
default:
|
|
89
|
+
u(t(G), null, {
|
|
90
|
+
default: n(() => [
|
|
92
91
|
S(V(t(e).title), 1)
|
|
93
92
|
]),
|
|
94
93
|
_: 1
|
|
95
94
|
}),
|
|
96
|
-
|
|
97
|
-
class:
|
|
95
|
+
u(t(F), {
|
|
96
|
+
class: i(`${l}-edit-btn`)
|
|
98
97
|
}, null, 8, ["class"])
|
|
99
98
|
], 2)
|
|
100
99
|
]),
|
|
101
100
|
_: 1
|
|
102
101
|
}, 16, ["class"])), [
|
|
103
|
-
[t(
|
|
102
|
+
[t(L), v]
|
|
104
103
|
])
|
|
105
104
|
]),
|
|
106
105
|
_: 3
|
|
@@ -111,113 +110,112 @@ import '../styles/editable/index.css';const J = /* @__PURE__ */ z({
|
|
|
111
110
|
name: "FEditable",
|
|
112
111
|
__name: "editable",
|
|
113
112
|
props: {
|
|
114
|
-
label:
|
|
115
|
-
for:
|
|
116
|
-
tooltip:
|
|
117
|
-
addonBefore:
|
|
118
|
-
addonAfter:
|
|
119
|
-
extra:
|
|
120
|
-
feedbackText:
|
|
121
|
-
feedbackStatus:
|
|
113
|
+
label: {},
|
|
114
|
+
for: {},
|
|
115
|
+
tooltip: {},
|
|
116
|
+
addonBefore: {},
|
|
117
|
+
addonAfter: {},
|
|
118
|
+
extra: {},
|
|
119
|
+
feedbackText: {},
|
|
120
|
+
feedbackStatus: {},
|
|
122
121
|
asterisk: { type: Boolean },
|
|
123
122
|
colon: { type: Boolean },
|
|
124
|
-
labelAlign:
|
|
125
|
-
wrapperAlign:
|
|
123
|
+
labelAlign: {},
|
|
124
|
+
wrapperAlign: {},
|
|
126
125
|
labelWrap: { type: Boolean },
|
|
127
|
-
labelWidth:
|
|
128
|
-
wrapperWidth:
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
wrapperCol: null,
|
|
126
|
+
labelWidth: {},
|
|
127
|
+
wrapperWidth: {},
|
|
128
|
+
labelCol: {},
|
|
129
|
+
wrapperCol: {},
|
|
132
130
|
fullness: { type: Boolean },
|
|
133
131
|
size: { default: "default" },
|
|
134
|
-
layout:
|
|
132
|
+
layout: {},
|
|
135
133
|
feedbackLayout: { default: "popover" },
|
|
136
|
-
tooltipLayout:
|
|
137
|
-
editProps:
|
|
134
|
+
tooltipLayout: {},
|
|
135
|
+
editProps: {}
|
|
138
136
|
},
|
|
139
137
|
setup(b) {
|
|
140
|
-
const
|
|
141
|
-
function
|
|
142
|
-
|
|
138
|
+
const a = b, e = E(), l = m(null), s = `${W}-editable`, r = m(null), v = g(() => k(a, "editProps")), y = g(() => M(a.editProps) ? { ...k(a, "editProps"), ...a.editProps } : k(a, "editProps"));
|
|
139
|
+
function o() {
|
|
140
|
+
$(e.value.data) || (e.value.data = {});
|
|
143
141
|
}
|
|
144
|
-
|
|
145
|
-
async function
|
|
146
|
-
e.value.disabled || (
|
|
142
|
+
o(), e.value.data.readPretty = !0;
|
|
143
|
+
async function f() {
|
|
144
|
+
e.value.disabled || (o(), e.value.data.readPretty = !1, await x(), r.value.feedbackTooltipRef.updatePopper(), l.value?.querySelector("input")?.focus());
|
|
147
145
|
}
|
|
148
|
-
function
|
|
149
|
-
e.value.data?.readPretty !== !0 && (
|
|
150
|
-
e.value.data.readPretty = !0, await
|
|
146
|
+
function B() {
|
|
147
|
+
e.value.data?.readPretty !== !0 && (o(), setTimeout(async () => {
|
|
148
|
+
e.value.data.readPretty = !0, await x(), r.value?.feedbackTooltipRef.updatePopper();
|
|
151
149
|
}, 0));
|
|
152
150
|
}
|
|
153
|
-
return (O, X) => (
|
|
151
|
+
return (O, X) => (d(), p("div", {
|
|
154
152
|
ref_key: "innerRef",
|
|
155
|
-
ref:
|
|
156
|
-
class:
|
|
153
|
+
ref: l,
|
|
154
|
+
class: i([s, t(e).disabled && "is-disabled"])
|
|
157
155
|
}, [
|
|
158
|
-
T((
|
|
159
|
-
class:
|
|
156
|
+
T((d(), p("div", {
|
|
157
|
+
class: i(`${s}-content`)
|
|
160
158
|
}, [
|
|
161
|
-
|
|
159
|
+
u(t(c), P({
|
|
162
160
|
ref_key: "formItemRef",
|
|
163
|
-
ref:
|
|
164
|
-
}, t(e).data?.readPretty === !1 ?
|
|
165
|
-
default:
|
|
161
|
+
ref: r
|
|
162
|
+
}, t(e).data?.readPretty === !1 ? y.value : v.value, { onClick: f }), {
|
|
163
|
+
default: n(() => [
|
|
166
164
|
C("div", null, [
|
|
167
|
-
|
|
165
|
+
A(O.$slots, "default")
|
|
168
166
|
])
|
|
169
167
|
]),
|
|
170
168
|
_: 3
|
|
171
169
|
}, 16),
|
|
172
|
-
t(e).disabled ? q("", !0) : (
|
|
173
|
-
t(e).data?.readPretty === !0 ? (
|
|
170
|
+
t(e).disabled ? q("", !0) : (d(), p(I, { key: 0 }, [
|
|
171
|
+
t(e).data?.readPretty === !0 ? (d(), _(t(c), {
|
|
174
172
|
key: 0,
|
|
175
|
-
size:
|
|
176
|
-
"feedback-layout":
|
|
173
|
+
size: a.size,
|
|
174
|
+
"feedback-layout": a.feedbackLayout
|
|
177
175
|
}, {
|
|
178
|
-
default:
|
|
179
|
-
|
|
180
|
-
class:
|
|
181
|
-
onClick:
|
|
176
|
+
default: n(() => [
|
|
177
|
+
u(t(F), {
|
|
178
|
+
class: i(`${s}-edit-btn`),
|
|
179
|
+
onClick: f
|
|
182
180
|
}, null, 8, ["class"])
|
|
183
181
|
]),
|
|
184
182
|
_: 1
|
|
185
|
-
}, 8, ["size", "feedback-layout"])) : (
|
|
183
|
+
}, 8, ["size", "feedback-layout"])) : (d(), _(t(c), {
|
|
186
184
|
key: 1,
|
|
187
|
-
size:
|
|
188
|
-
"feedback-layout":
|
|
185
|
+
size: a.size,
|
|
186
|
+
"feedback-layout": a.feedbackLayout
|
|
189
187
|
}, {
|
|
190
|
-
default:
|
|
191
|
-
|
|
192
|
-
class:
|
|
193
|
-
onClick:
|
|
188
|
+
default: n(() => [
|
|
189
|
+
u(t(N), {
|
|
190
|
+
class: i(`${s}-close-btn`),
|
|
191
|
+
onClick: B
|
|
194
192
|
}, null, 8, ["class"])
|
|
195
193
|
]),
|
|
196
194
|
_: 1
|
|
197
195
|
}, 8, ["size", "feedback-layout"]))
|
|
198
196
|
], 64))
|
|
199
197
|
], 2)), [
|
|
200
|
-
[t(
|
|
198
|
+
[t(L), B]
|
|
201
199
|
])
|
|
202
200
|
], 2));
|
|
203
201
|
}
|
|
204
|
-
}), Q =
|
|
202
|
+
}), Q = h(K, w(
|
|
205
203
|
{
|
|
206
204
|
required: !0,
|
|
207
205
|
description: "extra"
|
|
208
206
|
},
|
|
209
207
|
R
|
|
210
|
-
)), U =
|
|
208
|
+
)), U = h(J, w(
|
|
211
209
|
{
|
|
212
210
|
required: !0,
|
|
213
211
|
description: "extra"
|
|
214
212
|
},
|
|
215
213
|
R
|
|
216
|
-
)),
|
|
214
|
+
)), de = H(Q, {
|
|
217
215
|
Popover: U
|
|
218
216
|
});
|
|
219
217
|
export {
|
|
220
|
-
|
|
221
|
-
|
|
218
|
+
de as Editable,
|
|
219
|
+
de as default
|
|
222
220
|
};
|
|
223
221
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/editable/editable-popover.vue","../../src/editable/editable.vue","../../src/editable/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport type { Field } from '@formily/core'\r\nimport type { IFormItemProps } from '../form-item/types'\r\nimport { Edit } from '@element-plus/icons-vue'\r\nimport { reaction } from '@formily/reactive'\r\nimport { isValid } from '@formily/shared'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { ElPopover, ElText, ClickOutside as vClickOutside } from 'element-plus'\r\nimport { ref } from 'vue'\r\nimport { stylePrefix } from '../__builtins__/configs'\r\nimport { FormBaseItem } from '../form-item'\r\n\r\ndefineOptions({\r\n name: 'FEditablePopover',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps({\n label: null,\n for: null,\n tooltip: null,\n addonBefore: null,\n addonAfter: null,\n extra: null,\n feedbackText: null,\n feedbackStatus: null,\n asterisk: { type: Boolean },\n colon: { type: Boolean },\n labelAlign: null,\n wrapperAlign: null,\n labelWrap: { type: Boolean },\n labelWidth: null,\n wrapperWidth: null,\n wrapperWrap: { type: Boolean },\n labelCol: null,\n wrapperCol: null,\n fullness: { type: Boolean },\n size: { default: 'default' },\n layout: null,\n feedbackLayout: { default: 'popover' },\n tooltipLayout: null\n})\r\n\r\nconst fieldRef = useField<Field>()\r\nconst prefixCls = `${stylePrefix}-editable`\r\nconst contentRef = ref<HTMLElement>()\r\nconst visible = ref(false)\r\n\r\nif (isValid(fieldRef.value.data)) {\r\n /* istanbul ignore else -- @preserve */\r\n if (!isValid(fieldRef.value.data.readPretty)) {\r\n fieldRef.value.data.readPretty = true\r\n }\r\n}\r\nelse {\r\n fieldRef.value.data = {}\r\n fieldRef.value.data.readPretty = true\r\n}\r\n\r\nfunction onClickOutside(e) {\r\n const popoverDOM = contentRef.value.parentElement\r\n /* istanbul ignore else -- @preserve */\r\n if (!popoverDOM.contains(e.target)) {\r\n visible.value = false\r\n }\r\n}\r\nfunction onClick() {\r\n visible.value = true\r\n}\r\n\r\nreaction(\r\n () => fieldRef.value.form.queryFeedbacks({\r\n type: 'error',\r\n address: `${fieldRef.value.address.entire}.*`,\r\n }),\r\n (errorList) => {\r\n if (errorList.length > 0) {\r\n visible.value = true\r\n }\r\n },\r\n)\r\n</script>\r\n\r\n<template>\r\n <div :class=\"prefixCls\">\r\n <ElPopover\r\n v-bind=\"$attrs\"\r\n :visible=\"visible\"\r\n :title=\"$attrs.title || fieldRef.title\" trigger=\"click\" width=\"auto\"\r\n >\r\n <template #default>\r\n <div ref=\"contentRef\" :class=\"`${prefixCls}-popover-wrapper`\">\r\n <slot />\r\n </div>\r\n </template>\r\n <template #reference>\r\n <FormBaseItem v-click-outside=\"onClickOutside\" v-bind=\"props\" :class=\"`${prefixCls}-trigger`\">\r\n <div :class=\"`${prefixCls}-content`\" @click=\"onClick\">\r\n <ElText>\r\n {{ fieldRef.title }}\r\n </ElText>\r\n <Edit :class=\"`${prefixCls}-edit-btn`\" />\r\n </div>\r\n </FormBaseItem>\r\n </template>\r\n </ElPopover>\r\n </div>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { Field } from '@formily/core'\r\nimport type { IFormItemProps } from '../form-item/types'\r\nimport { Close, Edit } from '@element-plus/icons-vue'\r\nimport { isPlainObj, isValid } from '@formily/shared'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { ClickOutside as vClickOutside } from 'element-plus'\r\nimport { omit } from 'lodash-es'\r\nimport { computed, nextTick, ref } from 'vue'\r\nimport { stylePrefix } from '../__builtins__/configs'\r\nimport { FormBaseItem } from '../form-item'\r\n\r\ndefineOptions({\r\n name: 'FEditable',\r\n})\r\n\r\nconst props = defineProps({\n label: null,\n for: null,\n tooltip: null,\n addonBefore: null,\n addonAfter: null,\n extra: null,\n feedbackText: null,\n feedbackStatus: null,\n asterisk: { type: Boolean },\n colon: { type: Boolean },\n labelAlign: null,\n wrapperAlign: null,\n labelWrap: { type: Boolean },\n labelWidth: null,\n wrapperWidth: null,\n wrapperWrap: { type: Boolean },\n labelCol: null,\n wrapperCol: null,\n fullness: { type: Boolean },\n size: { default: 'default' },\n layout: null,\n feedbackLayout: { default: 'popover' },\n tooltipLayout: null,\n editProps: null\n})\r\n\r\nconst fieldRef = useField<Field>()\r\nconst innerRef = ref<HTMLElement>(null)\r\nconst prefixCls = `${stylePrefix}-editable`\r\nconst formItemRef = ref<InstanceType<typeof FormBaseItem>>(null)\r\n\r\nconst commonProps = computed(() => omit(props, 'editProps'))\r\nconst editProps = computed(() => {\r\n if (isPlainObj(props.editProps)) {\r\n return { ...omit(props, 'editProps'), ...props.editProps }\r\n }\r\n return omit(props, 'editProps')\r\n})\r\n\r\nfunction handleEnsureReadPretty() {\r\n if (!isValid(fieldRef.value.data)) {\r\n fieldRef.value.data = {}\r\n }\r\n}\r\n\r\nhandleEnsureReadPretty()\r\nfieldRef.value.data.readPretty = true\r\n\r\nasync function onClick() {\r\n if (fieldRef.value.disabled)\r\n return\r\n handleEnsureReadPretty()\r\n fieldRef.value.data.readPretty = false\r\n await nextTick()\r\n formItemRef.value.feedbackTooltipRef.updatePopper()\r\n innerRef.value?.querySelector('input')?.focus()\r\n}\r\n\r\nfunction onClickOutside() {\r\n if (fieldRef.value.data?.readPretty === true)\r\n return\r\n handleEnsureReadPretty()\r\n // 使用下拉菜单等触发的事件完成应有的操作\r\n setTimeout(async () => {\r\n fieldRef.value.data.readPretty = true\r\n await nextTick()\r\n formItemRef.value?.feedbackTooltipRef.updatePopper()\r\n }, 0)\r\n}\r\n</script>\r\n\r\n<template>\r\n <div ref=\"innerRef\" :class=\"[prefixCls, fieldRef.disabled && 'is-disabled']\">\r\n <div v-click-outside=\"onClickOutside\" :class=\"`${prefixCls}-content`\">\r\n <FormBaseItem ref=\"formItemRef\" v-bind=\"fieldRef.data?.readPretty === false ? editProps : commonProps\" @click=\"onClick\">\r\n <div>\r\n <slot />\r\n </div>\r\n </FormBaseItem>\r\n <template v-if=\"!fieldRef.disabled\">\r\n <template v-if=\"fieldRef.data?.readPretty === true\">\r\n <FormBaseItem :size=\"props.size\" :feedback-layout=\"props.feedbackLayout\">\r\n <Edit :class=\"`${prefixCls}-edit-btn`\" @click=\"onClick\" />\r\n </FormBaseItem>\r\n </template>\r\n <template v-else>\r\n <FormBaseItem :size=\"props.size\" :feedback-layout=\"props.feedbackLayout\">\r\n <Close :class=\"`${prefixCls}-close-btn`\" @click=\"onClickOutside\" />\r\n </FormBaseItem>\r\n </template>\r\n </template>\r\n </div>\r\n </div>\r\n</template>\r\n","import type { ElPopover } from 'element-plus'\r\nimport type { IFormItemProps } from '../form-item/types'\r\nimport { connect, mapProps } from '@silver-formily/vue'\r\nimport { composeExport } from '../__builtins__/shared'\r\nimport { fieldFeedbackMapper } from '../form-item'\r\nimport FEditablePopover from './editable-popover.vue'\r\nimport FEditable from './editable.vue'\r\nimport './style.scss'\r\n\r\nexport type EditableProps = IFormItemProps\r\nexport type EditablePopoverProps = typeof ElPopover\r\n\r\nconst EditableInner = connect(FEditable, mapProps(\r\n {\r\n required: true,\r\n description: 'extra',\r\n },\r\n fieldFeedbackMapper,\r\n))\r\n\r\nconst EditablePopover = connect(FEditablePopover, mapProps(\r\n {\r\n required: true,\r\n description: 'extra',\r\n },\r\n fieldFeedbackMapper,\r\n))\r\n\r\nexport const Editable = composeExport(EditableInner, {\r\n Popover: EditablePopover,\r\n})\r\n\r\nexport default Editable\r\n"],"names":["props","__props","fieldRef","useField","prefixCls","stylePrefix","contentRef","ref","visible","isValid","onClickOutside","e","popoverDOM","onClick","reaction","errorList","_createElementBlock","_createVNode","_unref","ElPopover","_mergeProps","_ctx","$attrs","_createElementVNode","_renderSlot","_createBlock","FormBaseItem","ElText","_createTextVNode","_toDisplayString","Edit","innerRef","formItemRef","commonProps","computed","omit","editProps","isPlainObj","handleEnsureReadPretty","nextTick","_normalizeClass","_Fragment","Close","EditableInner","connect","FEditable","mapProps","fieldFeedbackMapper","EditablePopover","FEditablePopover","Editable","composeExport"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/editable/editable-popover.vue","../../src/editable/editable.vue","../../src/editable/index.ts"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport type { Field } from '@formily/core'\r\nimport type { IFormItemProps } from '../form-item/types'\r\nimport { Edit } from '@element-plus/icons-vue'\r\nimport { reaction } from '@formily/reactive'\r\nimport { isValid } from '@formily/shared'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { ElPopover, ElText, ClickOutside as vClickOutside } from 'element-plus'\r\nimport { ref } from 'vue'\r\nimport { stylePrefix } from '../__builtins__/configs'\r\nimport { FormBaseItem } from '../form-item'\r\n\r\ndefineOptions({\r\n name: 'FEditablePopover',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = withDefaults(defineProps<IFormItemProps>(), {\r\n feedbackLayout: 'popover',\r\n size: 'default',\r\n})\r\n\r\nconst fieldRef = useField<Field>()\r\nconst prefixCls = `${stylePrefix}-editable`\r\nconst contentRef = ref<HTMLElement>()\r\nconst visible = ref(false)\r\n\r\nif (isValid(fieldRef.value.data)) {\r\n /* istanbul ignore else -- @preserve */\r\n if (!isValid(fieldRef.value.data.readPretty)) {\r\n fieldRef.value.data.readPretty = true\r\n }\r\n}\r\nelse {\r\n fieldRef.value.data = {}\r\n fieldRef.value.data.readPretty = true\r\n}\r\n\r\nfunction onClickOutside(e) {\r\n const popoverDOM = contentRef.value.parentElement\r\n /* istanbul ignore else -- @preserve */\r\n if (!popoverDOM.contains(e.target)) {\r\n visible.value = false\r\n }\r\n}\r\nfunction onClick() {\r\n visible.value = true\r\n}\r\n\r\nreaction(\r\n () => fieldRef.value.form.queryFeedbacks({\r\n type: 'error',\r\n address: `${fieldRef.value.address.entire}.*`,\r\n }),\r\n (errorList) => {\r\n if (errorList.length > 0) {\r\n visible.value = true\r\n }\r\n },\r\n)\r\n</script>\r\n\r\n<template>\r\n <div :class=\"prefixCls\">\r\n <ElPopover\r\n v-bind=\"$attrs\"\r\n :visible=\"visible\"\r\n :title=\"$attrs.title || fieldRef.title\" trigger=\"click\" width=\"auto\"\r\n >\r\n <template #default>\r\n <div ref=\"contentRef\" :class=\"`${prefixCls}-popover-wrapper`\">\r\n <slot />\r\n </div>\r\n </template>\r\n <template #reference>\r\n <FormBaseItem v-click-outside=\"onClickOutside\" v-bind=\"props\" :class=\"`${prefixCls}-trigger`\">\r\n <div :class=\"`${prefixCls}-content`\" @click=\"onClick\">\r\n <ElText>\r\n {{ fieldRef.title }}\r\n </ElText>\r\n <Edit :class=\"`${prefixCls}-edit-btn`\" />\r\n </div>\r\n </FormBaseItem>\r\n </template>\r\n </ElPopover>\r\n </div>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport type { Field } from '@formily/core'\r\nimport type { IFormItemProps } from '../form-item/types'\r\nimport { Close, Edit } from '@element-plus/icons-vue'\r\nimport { isPlainObj, isValid } from '@formily/shared'\r\nimport { useField } from '@silver-formily/vue'\r\nimport { ClickOutside as vClickOutside } from 'element-plus'\r\nimport { omit } from 'lodash-es'\r\nimport { computed, nextTick, ref } from 'vue'\r\nimport { stylePrefix } from '../__builtins__/configs'\r\nimport { FormBaseItem } from '../form-item'\r\n\r\ndefineOptions({\r\n name: 'FEditable',\r\n})\r\n\r\nconst props = withDefaults(defineProps<IFormItemProps & { editProps?: IFormItemProps }>(), {\r\n feedbackLayout: 'popover',\r\n size: 'default',\r\n})\r\n\r\nconst fieldRef = useField<Field>()\r\nconst innerRef = ref<HTMLElement>(null)\r\nconst prefixCls = `${stylePrefix}-editable`\r\nconst formItemRef = ref<InstanceType<typeof FormBaseItem>>(null)\r\n\r\nconst commonProps = computed(() => omit(props, 'editProps'))\r\nconst editProps = computed(() => {\r\n if (isPlainObj(props.editProps)) {\r\n return { ...omit(props, 'editProps'), ...props.editProps }\r\n }\r\n return omit(props, 'editProps')\r\n})\r\n\r\nfunction handleEnsureReadPretty() {\r\n if (!isValid(fieldRef.value.data)) {\r\n fieldRef.value.data = {}\r\n }\r\n}\r\n\r\nhandleEnsureReadPretty()\r\nfieldRef.value.data.readPretty = true\r\n\r\nasync function onClick() {\r\n if (fieldRef.value.disabled)\r\n return\r\n handleEnsureReadPretty()\r\n fieldRef.value.data.readPretty = false\r\n await nextTick()\r\n formItemRef.value.feedbackTooltipRef.updatePopper()\r\n innerRef.value?.querySelector('input')?.focus()\r\n}\r\n\r\nfunction onClickOutside() {\r\n if (fieldRef.value.data?.readPretty === true)\r\n return\r\n handleEnsureReadPretty()\r\n // 使用下拉菜单等触发的事件完成应有的操作\r\n setTimeout(async () => {\r\n fieldRef.value.data.readPretty = true\r\n await nextTick()\r\n formItemRef.value?.feedbackTooltipRef.updatePopper()\r\n }, 0)\r\n}\r\n</script>\r\n\r\n<template>\r\n <div ref=\"innerRef\" :class=\"[prefixCls, fieldRef.disabled && 'is-disabled']\">\r\n <div v-click-outside=\"onClickOutside\" :class=\"`${prefixCls}-content`\">\r\n <FormBaseItem ref=\"formItemRef\" v-bind=\"fieldRef.data?.readPretty === false ? editProps : commonProps\" @click=\"onClick\">\r\n <div>\r\n <slot />\r\n </div>\r\n </FormBaseItem>\r\n <template v-if=\"!fieldRef.disabled\">\r\n <template v-if=\"fieldRef.data?.readPretty === true\">\r\n <FormBaseItem :size=\"props.size\" :feedback-layout=\"props.feedbackLayout\">\r\n <Edit :class=\"`${prefixCls}-edit-btn`\" @click=\"onClick\" />\r\n </FormBaseItem>\r\n </template>\r\n <template v-else>\r\n <FormBaseItem :size=\"props.size\" :feedback-layout=\"props.feedbackLayout\">\r\n <Close :class=\"`${prefixCls}-close-btn`\" @click=\"onClickOutside\" />\r\n </FormBaseItem>\r\n </template>\r\n </template>\r\n </div>\r\n </div>\r\n</template>\r\n","import type { ElPopover } from 'element-plus'\r\nimport type { IFormItemProps } from '../form-item/types'\r\nimport { connect, mapProps } from '@silver-formily/vue'\r\nimport { composeExport } from '../__builtins__/shared'\r\nimport { fieldFeedbackMapper } from '../form-item'\r\nimport FEditablePopover from './editable-popover.vue'\r\nimport FEditable from './editable.vue'\r\nimport './style.scss'\r\n\r\nexport type EditableProps = IFormItemProps\r\nexport type EditablePopoverProps = typeof ElPopover\r\n\r\nconst EditableInner = connect<typeof FEditable>(FEditable, mapProps(\r\n {\r\n required: true,\r\n description: 'extra',\r\n },\r\n fieldFeedbackMapper,\r\n))\r\n\r\nconst EditablePopover = connect<typeof FEditablePopover>(FEditablePopover, mapProps(\r\n {\r\n required: true,\r\n description: 'extra',\r\n },\r\n fieldFeedbackMapper,\r\n))\r\n\r\nexport const Editable = composeExport(EditableInner, {\r\n Popover: EditablePopover,\r\n})\r\n\r\nexport default Editable\r\n"],"names":["props","__props","fieldRef","useField","prefixCls","stylePrefix","contentRef","ref","visible","isValid","onClickOutside","e","popoverDOM","onClick","reaction","errorList","_createElementBlock","_createVNode","_unref","ElPopover","_mergeProps","_ctx","$attrs","_createElementVNode","_renderSlot","_createBlock","FormBaseItem","ElText","_createTextVNode","_toDisplayString","Edit","innerRef","formItemRef","commonProps","computed","omit","editProps","isPlainObj","handleEnsureReadPretty","nextTick","_normalizeClass","_Fragment","Close","EditableInner","connect","FEditable","mapProps","fieldFeedbackMapper","EditablePopover","FEditablePopover","Editable","composeExport"],"mappings":"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"}
|