@silver-formily/element-plus 2.1.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/LICENSE +21 -21
  2. package/esm/__builtins__/configs/index.mjs.map +1 -1
  3. package/esm/__builtins__/shared/hooks.mjs.map +1 -1
  4. package/esm/__builtins__/shared/loading.mjs.map +1 -1
  5. package/esm/__builtins__/shared/simple-version-compare.mjs.map +1 -1
  6. package/esm/__builtins__/shared/transform-component.mjs.map +1 -1
  7. package/esm/__builtins__/shared/utils.mjs.map +1 -1
  8. package/esm/array-base/index.mjs +18 -21
  9. package/esm/array-base/index.mjs.map +1 -1
  10. package/esm/array-base/symbols.mjs.map +1 -1
  11. package/esm/array-base/utils.mjs +29 -33
  12. package/esm/array-base/utils.mjs.map +1 -1
  13. package/esm/array-cards/index.mjs +29 -31
  14. package/esm/array-cards/index.mjs.map +1 -1
  15. package/esm/array-collapse/index.mjs +35 -36
  16. package/esm/array-collapse/index.mjs.map +1 -1
  17. package/esm/array-collapse/utils.mjs +2 -8
  18. package/esm/array-collapse/utils.mjs.map +1 -1
  19. package/esm/array-items/index.mjs +30 -33
  20. package/esm/array-items/index.mjs.map +1 -1
  21. package/esm/array-list-tabs/index.mjs +27 -28
  22. package/esm/array-list-tabs/index.mjs.map +1 -1
  23. package/esm/array-list-tabs/utils.mjs +5 -11
  24. package/esm/array-list-tabs/utils.mjs.map +1 -1
  25. package/esm/array-table/index.mjs +52 -53
  26. package/esm/array-table/index.mjs.map +1 -1
  27. package/esm/array-table/utils.mjs +12 -18
  28. package/esm/array-table/utils.mjs.map +1 -1
  29. package/esm/array-tabs/index.mjs +17 -19
  30. package/esm/array-tabs/index.mjs.map +1 -1
  31. package/esm/cascader/index.mjs +17 -20
  32. package/esm/cascader/index.mjs.map +1 -1
  33. package/esm/checkbox/index.mjs +16 -19
  34. package/esm/checkbox/index.mjs.map +1 -1
  35. package/esm/date-picker/index.mjs +12 -14
  36. package/esm/date-picker/index.mjs.map +1 -1
  37. package/esm/editable/index.mjs +48 -50
  38. package/esm/editable/index.mjs.map +1 -1
  39. package/esm/form/form.mjs +6 -6
  40. package/esm/form/form.mjs.map +1 -1
  41. package/esm/form-button-group/index.mjs +23 -26
  42. package/esm/form-button-group/index.mjs.map +1 -1
  43. package/esm/form-button-group/utils.mjs +2 -8
  44. package/esm/form-button-group/utils.mjs.map +1 -1
  45. package/esm/form-collapse/index.mjs +18 -20
  46. package/esm/form-collapse/index.mjs.map +1 -1
  47. package/esm/form-collapse/utils.mjs.map +1 -1
  48. package/esm/form-dialog/index.mjs +18 -18
  49. package/esm/form-dialog/index.mjs.map +1 -1
  50. package/esm/form-drawer/index.mjs +17 -17
  51. package/esm/form-drawer/index.mjs.map +1 -1
  52. package/esm/form-grid/hooks.mjs.map +1 -1
  53. package/esm/form-grid/index.mjs +20 -23
  54. package/esm/form-grid/index.mjs.map +1 -1
  55. package/esm/form-item/index.mjs +59 -57
  56. package/esm/form-item/index.mjs.map +1 -1
  57. package/esm/form-item/utils.mjs.map +1 -1
  58. package/esm/form-layout/form-layout.mjs +12 -16
  59. package/esm/form-layout/form-layout.mjs.map +1 -1
  60. package/esm/form-layout/utils.mjs +18 -23
  61. package/esm/form-layout/utils.mjs.map +1 -1
  62. package/esm/form-step/index.mjs +24 -26
  63. package/esm/form-step/index.mjs.map +1 -1
  64. package/esm/form-step/utils.mjs.map +1 -1
  65. package/esm/form-tab/hooks.mjs.map +1 -1
  66. package/esm/form-tab/index.mjs +19 -20
  67. package/esm/form-tab/index.mjs.map +1 -1
  68. package/esm/form-tab/utils.mjs.map +1 -1
  69. package/esm/index.d.ts +3 -0
  70. package/esm/index.mjs +46 -40
  71. package/esm/index.mjs.map +1 -1
  72. package/esm/input/index.mjs +20 -23
  73. package/esm/input/index.mjs.map +1 -1
  74. package/esm/input-number/index.mjs +7 -9
  75. package/esm/input-number/index.mjs.map +1 -1
  76. package/esm/pagination/components/jumper.mjs.map +1 -1
  77. package/esm/pagination/components/next.mjs.map +1 -1
  78. package/esm/pagination/components/pager.mjs.map +1 -1
  79. package/esm/pagination/components/prev.mjs.map +1 -1
  80. package/esm/pagination/components/total.mjs.map +1 -1
  81. package/esm/pagination/pagination.mjs.map +1 -1
  82. package/esm/password/index.mjs.map +1 -1
  83. package/esm/preview-text/index.d.ts +5 -0
  84. package/esm/preview-text/index.mjs +149 -128
  85. package/esm/preview-text/index.mjs.map +1 -1
  86. package/esm/preview-text/rate.d.ts +5 -0
  87. package/esm/preview-text/utils.d.ts +5 -5
  88. package/esm/preview-text/utils.mjs.map +1 -1
  89. package/esm/radio/index.mjs +25 -28
  90. package/esm/radio/index.mjs.map +1 -1
  91. package/esm/rate/index.d.ts +187 -0
  92. package/esm/rate/index.mjs +14 -0
  93. package/esm/rate/index.mjs.map +1 -0
  94. package/esm/reset/index.mjs.map +1 -1
  95. package/esm/segmented/index.d.ts +26 -0
  96. package/esm/segmented/index.mjs +37 -0
  97. package/esm/segmented/index.mjs.map +1 -0
  98. package/esm/segmented/segmented.d.ts +25 -0
  99. package/esm/select/index.mjs +16 -19
  100. package/esm/select/index.mjs.map +1 -1
  101. package/esm/select-table/index.mjs +12 -15
  102. package/esm/select-table/index.mjs.map +1 -1
  103. package/esm/slider/index.d.ts +177 -0
  104. package/esm/slider/index.mjs +14 -0
  105. package/esm/slider/index.mjs.map +1 -0
  106. package/esm/submit/index.mjs.map +1 -1
  107. package/esm/switch/index.mjs.map +1 -1
  108. package/esm/time-picker/index.mjs +6 -8
  109. package/esm/time-picker/index.mjs.map +1 -1
  110. package/esm/time-select/index.mjs +6 -8
  111. package/esm/time-select/index.mjs.map +1 -1
  112. package/esm/transfer/index.mjs.map +1 -1
  113. package/esm/tree/index.mjs +28 -31
  114. package/esm/tree/index.mjs.map +1 -1
  115. package/esm/tree/utils.mjs.map +1 -1
  116. package/esm/tree-select/index.mjs +17 -20
  117. package/esm/tree-select/index.mjs.map +1 -1
  118. package/esm/upload/index.mjs +7 -9
  119. package/esm/upload/index.mjs.map +1 -1
  120. package/esm/vendor/sizes.mjs.map +1 -1
  121. package/package.json +113 -113
@@ -1,13 +1,10 @@
1
1
  import { connect as i, mapProps as c } from "@silver-formily/vue";
2
- import { defineComponent as d, createBlock as f, openBlock as l, unref as e, mergeProps as u, createSlots as C, withCtx as t, renderSlot as r } from "vue";
3
- import { ElCascader as y } from "element-plus";
4
- import "@formily/reactive";
5
- import { mapReadPretty as P } from "../__builtins__/shared/transform-component.mjs";
6
- import { PreviewText as k } from "../preview-text/index.mjs";
7
- import "@formily/core";
8
- import "@silver-formily/reactive-vue";
9
- import { useCleanAttrs as $ } from "../__builtins__/shared/utils.mjs";
10
- const h = /* @__PURE__ */ d({
2
+ import { PreviewText as d } from "../preview-text/index.mjs";
3
+ import { defineComponent as f, createBlock as l, openBlock as u, unref as o, mergeProps as C, createSlots as y, withCtx as t, renderSlot as r } from "vue";
4
+ import { ElCascader as P } from "element-plus";
5
+ import { useCleanAttrs as k } from "../__builtins__/shared/utils.mjs";
6
+ import { mapReadPretty as $ } from "../__builtins__/shared/transform-component.mjs";
7
+ const h = /* @__PURE__ */ f({
11
8
  name: "FCascader",
12
9
  inheritAttrs: !1,
13
10
  __name: "cascader",
@@ -15,36 +12,36 @@ const h = /* @__PURE__ */ d({
15
12
  options: {}
16
13
  },
17
14
  setup(s) {
18
- const a = s, { props: p } = $();
19
- return (o, v) => (l(), f(e(y), u(e(p), {
15
+ const a = s, { props: p } = k();
16
+ return (e, v) => (u(), l(o(P), C(o(p), {
20
17
  options: a.options
21
- }), C({ _: 2 }, [
22
- o.$slots.default ? {
18
+ }), y({ _: 2 }, [
19
+ e.$slots.default ? {
23
20
  name: "default",
24
21
  fn: t(({ node: n, data: m }) => [
25
- r(o.$slots, "default", {
22
+ r(e.$slots, "default", {
26
23
  node: n,
27
24
  data: m
28
25
  })
29
26
  ]),
30
27
  key: "0"
31
28
  } : void 0,
32
- o.$slots.empty ? {
29
+ e.$slots.empty ? {
33
30
  name: "empty",
34
31
  fn: t(() => [
35
- r(o.$slots, "empty")
32
+ r(e.$slots, "empty")
36
33
  ]),
37
34
  key: "1"
38
35
  } : void 0
39
36
  ]), 1040, ["options"]));
40
37
  }
41
- }), R = i(
38
+ }), g = i(
42
39
  h,
43
40
  c({ dataSource: "options", disabled: !0 }),
44
- P(k.Cascader)
41
+ $(d.Cascader)
45
42
  );
46
43
  export {
47
- R as Cascader,
48
- R as default
44
+ g as Cascader,
45
+ g as default
49
46
  };
50
47
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/cascader/cascader.vue","../../src/cascader/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { CascaderOption } from 'element-plus'\nimport { ElCascader } from 'element-plus'\nimport { useCleanAttrs } from '../__builtins__'\n\ndefineOptions({\n name: 'FCascader',\n inheritAttrs: false,\n})\n\nconst props = defineProps<{\n options?: CascaderOption[]\n}>()\n\nconst { props: cascaderProps } = useCleanAttrs()\n</script>\n\n<template>\n <ElCascader\n v-bind=\"cascaderProps\"\n :options=\"props.options\"\n >\n <template v-if=\"$slots.default\" #default=\"{ node, data }\">\n <slot :node=\"node\" :data=\"data\" />\n </template>\n <template v-if=\"$slots.empty\" #empty>\n <slot name=\"empty\" />\n </template>\n </ElCascader>\n</template>\n","import { connect, mapProps } from '@silver-formily/vue'\nimport { mapReadPretty } from '../__builtins__'\nimport { PreviewText } from '../preview-text'\nimport FCascader from './cascader.vue'\n\nexport const Cascader = connect<typeof FCascader>(\n FCascader,\n mapProps({ dataSource: 'options', disabled: true }),\n mapReadPretty(PreviewText.Cascader),\n)\n\nexport default Cascader\n"],"names":["props","__props","cascaderProps","useCleanAttrs","_createBlock","_unref","ElCascader","_mergeProps","$slots","node","data","_renderSlot","_ctx","Cascader","connect","FCascader","mapProps","mapReadPretty","PreviewText"],"mappings":";;;;;;;;;;;;;;;;;AAUA,UAAMA,IAAQC,GAIR,EAAE,OAAOC,EAAA,IAAkBC,EAAA;2BAI/BC,EAUaC,EAAAC,CAAA,GAVbC,EAUaF,EAAAH,CAAA,GATU;AAAA,MACpB,SAASF,EAAM;AAAA,IAAA;MAEAQ,EAAAA,OAAO;cAAU;AAAA,cAC/B,CAAkC,EADQ,MAAAC,GAAM,MAAAC,QAAI;AAAA,UACpDC,EAAkCC,EAAA,QAAA,WAAA;AAAA,YAA3B,MAAAH;AAAA,YAAa,MAAAC;AAAA,UAAA;;;;MAENF,EAAAA,OAAO;cAAQ;AAAA,cAC7B,MAAqB;AAAA,UAArBG,EAAqBC,EAAA,QAAA,OAAA;AAAA,QAAA;;;;;ICrBdC,IAAWC;AAAA,EACtBC;AAAAA,EACAC,EAAS,EAAE,YAAY,WAAW,UAAU,IAAM;AAAA,EAClDC,EAAcC,EAAY,QAAQ;AACpC;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/cascader/cascader.vue","../../src/cascader/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { CascaderOption } from 'element-plus'\r\nimport { ElCascader } from 'element-plus'\r\nimport { useCleanAttrs } from '../__builtins__'\r\n\r\ndefineOptions({\r\n name: 'FCascader',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps<{\r\n options?: CascaderOption[]\r\n}>()\r\n\r\nconst { props: cascaderProps } = useCleanAttrs()\r\n</script>\r\n\r\n<template>\r\n <ElCascader\r\n v-bind=\"cascaderProps\"\r\n :options=\"props.options\"\r\n >\r\n <template v-if=\"$slots.default\" #default=\"{ node, data }\">\r\n <slot :node=\"node\" :data=\"data\" />\r\n </template>\r\n <template v-if=\"$slots.empty\" #empty>\r\n <slot name=\"empty\" />\r\n </template>\r\n </ElCascader>\r\n</template>\r\n","import { connect, mapProps } from '@silver-formily/vue'\r\nimport { mapReadPretty } from '../__builtins__'\r\nimport { PreviewText } from '../preview-text'\r\nimport FCascader from './cascader.vue'\r\n\r\nexport const Cascader = connect<typeof FCascader>(\r\n FCascader,\r\n mapProps({ dataSource: 'options', disabled: true }),\r\n mapReadPretty(PreviewText.Cascader),\r\n)\r\n\r\nexport default Cascader\r\n"],"names":["props","__props","cascaderProps","useCleanAttrs","_createBlock","_unref","ElCascader","_mergeProps","$slots","node","data","_renderSlot","_ctx","Cascader","connect","FCascader","mapProps","mapReadPretty","PreviewText"],"mappings":";;;;;;;;;;;;;;AAUA,UAAMA,IAAQC,GAIR,EAAE,OAAOC,EAAA,IAAkBC,EAAA;2BAI/BC,EAUaC,EAAAC,CAAA,GAVbC,EAUaF,EAAAH,CAAA,GATU;AAAA,MACpB,SAASF,EAAM;AAAA,IAAA;MAEAQ,EAAAA,OAAO;cAAU;AAAA,cAC/B,CAAkC,EADQ,MAAAC,GAAM,MAAAC,QAAI;AAAA,UACpDC,EAAkCC,EAAA,QAAA,WAAA;AAAA,YAA3B,MAAAH;AAAA,YAAa,MAAAC;AAAA,UAAA;;;;MAENF,EAAAA,OAAO;cAAQ;AAAA,cAC7B,MAAqB;AAAA,UAArBG,EAAqBC,EAAA,QAAA,OAAA;AAAA,QAAA;;;;;ICrBdC,IAAWC;AAAA,EACtBC;AAAAA,EACAC,EAAS,EAAE,YAAY,WAAW,UAAU,IAAM;AAAA,EAClDC,EAAcC,EAAY,QAAQ;AACpC;"}
@@ -1,15 +1,12 @@
1
1
  import { connect as _, mapProps as y } from "@silver-formily/vue";
2
2
  import { ElCheckboxButton as S, ElCheckbox as h, ElCheckboxGroup as g, version as E } from "element-plus";
3
- import { defineComponent as T, computed as c, useSlots as A, createBlock as a, openBlock as o, unref as n, normalizeProps as B, guardReactiveProps as G, withCtx as l, createElementBlock as m, Fragment as i, renderList as f, resolveDynamicComponent as b, mergeProps as d, createTextVNode as w, toDisplayString as D, renderSlot as F } from "vue";
4
- import "@formily/reactive";
5
- import { mapReadPretty as I } from "../__builtins__/shared/transform-component.mjs";
6
- import { useCleanAttrs as L, composeExport as N } from "../__builtins__/shared/utils.mjs";
7
- import { PreviewText as O } from "../preview-text/index.mjs";
3
+ import { PreviewText as T } from "../preview-text/index.mjs";
4
+ import { defineComponent as A, computed as c, useSlots as B, createBlock as a, openBlock as o, unref as p, normalizeProps as G, guardReactiveProps as w, withCtx as l, createElementBlock as m, Fragment as i, renderList as f, resolveDynamicComponent as b, mergeProps as d, createTextVNode as D, toDisplayString as F, renderSlot as I } from "vue";
8
5
  import { isPlainObj as k } from "@formily/shared";
9
- import { lt as R } from "../__builtins__/shared/simple-version-compare.mjs";
10
- import "@formily/core";
11
- import "@silver-formily/reactive-vue";
12
- const j = /* @__PURE__ */ T({
6
+ import { lt as L } from "../__builtins__/shared/simple-version-compare.mjs";
7
+ import { useCleanAttrs as N, composeExport as O } from "../__builtins__/shared/utils.mjs";
8
+ import { mapReadPretty as R } from "../__builtins__/shared/transform-component.mjs";
9
+ const j = /* @__PURE__ */ A({
13
10
  name: "FCheckboxGroup",
14
11
  inheritAttrs: !1,
15
12
  __name: "checkbox-group",
@@ -24,7 +21,7 @@ const j = /* @__PURE__ */ T({
24
21
  }
25
22
  },
26
23
  setup(x) {
27
- const p = x, s = c(() => p.optionType === "button" ? S : h), C = R(E, "2.6.0"), u = c(() => p.options.map((e) => {
24
+ const n = x, s = c(() => n.optionType === "button" ? S : h), C = L(E, "2.6.0"), u = c(() => n.options.map((e) => {
28
25
  if (!k(e))
29
26
  return {
30
27
  label: e,
@@ -35,17 +32,17 @@ const j = /* @__PURE__ */ T({
35
32
  ...e,
36
33
  label: e.value
37
34
  } : e;
38
- })), v = A(), { props: P } = L();
39
- return (e, V) => (o(), a(n(g), B(G(n(P))), {
35
+ })), v = B(), { props: P } = N();
36
+ return (e, V) => (o(), a(p(g), G(w(p(P))), {
40
37
  default: l(() => [
41
- n(v).option ? (o(!0), m(i, { key: 1 }, f(u.value, (t, r) => (o(), a(b(s.value), d({ key: r }, { ref_for: !0 }, t), {
38
+ p(v).option ? (o(!0), m(i, { key: 1 }, f(u.value, (t, r) => (o(), a(b(s.value), d({ key: r }, { ref_for: !0 }, t), {
42
39
  default: l(() => [
43
- F(e.$slots, "option", { option: t })
40
+ I(e.$slots, "option", { option: t })
44
41
  ]),
45
42
  _: 2
46
43
  }, 1040))), 128)) : (o(!0), m(i, { key: 0 }, f(u.value, (t, r) => (o(), a(b(s.value), d({ key: r }, { ref_for: !0 }, t), {
47
44
  default: l(() => [
48
- w(D(n(k)(p.options[r]) ? p.options[r]?.label : t.label), 1)
45
+ D(F(p(k)(n.options[r]) ? n.options[r]?.label : t.label), 1)
49
46
  ]),
50
47
  _: 2
51
48
  }, 1040))), 128))
@@ -56,7 +53,7 @@ const j = /* @__PURE__ */ T({
56
53
  }), z = _(
57
54
  j,
58
55
  y({ dataSource: "options", disabled: !0 }),
59
- I(O.Select, {
56
+ R(T.Select, {
60
57
  multiple: !0
61
58
  })
62
59
  ), H = _(
@@ -64,11 +61,11 @@ const j = /* @__PURE__ */ T({
64
61
  y({
65
62
  disabled: !0
66
63
  })
67
- ), ee = N(H, {
64
+ ), X = O(H, {
68
65
  Group: z
69
66
  });
70
67
  export {
71
- ee as Checkbox,
72
- ee as default
68
+ X as Checkbox,
69
+ X as default
73
70
  };
74
71
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/checkbox/checkbox-group.vue","../../src/checkbox/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { CheckboxProps } from 'element-plus'\nimport type { PropType } from 'vue'\nimport { isPlainObj } from '@formily/shared'\nimport { ElCheckbox, ElCheckboxButton, ElCheckboxGroup, version } from 'element-plus'\nimport { computed, useSlots } from 'vue'\nimport { lt, useCleanAttrs } from '../__builtins__'\n\ndefineOptions({\n name: 'FCheckboxGroup',\n inheritAttrs: false,\n})\n\nconst props = defineProps({\n options: {\n type: Array as PropType<Array<CheckboxProps>>,\n default: () => [],\n },\n optionType: {\n type: String as PropType<'default' | 'button'>,\n default: 'default',\n },\n})\n\nconst OptionType = computed(() => {\n return props.optionType === 'button' ? ElCheckboxButton : ElCheckbox\n})\nconst IS_LESS_THAN_2_6_0 = lt(version, '2.6.0')\nconst compatiableProps = computed(() => {\n return props.options.map((option) => {\n if (!isPlainObj(option)) {\n return {\n label: option,\n value: option,\n }\n }\n /* istanbul ignore if -- @preserve */\n if (IS_LESS_THAN_2_6_0) {\n return {\n ...option,\n label: option.value,\n }\n }\n return option\n })\n})\n\nconst slots = useSlots()\nconst { props: checkboxProps } = useCleanAttrs()\n</script>\n\n<template>\n <ElCheckboxGroup v-bind=\"checkboxProps\">\n <template v-if=\"!slots.option\">\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\n {{ isPlainObj(props.options[index]) ? props.options[index]?.label : option.label }}\n </component>\n </template>\n <template v-else>\n <component :is=\"OptionType\" v-for=\"(option, index) of compatiableProps\" :key=\"index\" v-bind=\"option\">\n <slot name=\"option\" :option=\"option\" />\n </component>\n </template>\n </ElCheckboxGroup>\n</template>\n","import { connect, mapProps } from '@silver-formily/vue'\nimport { ElCheckbox } from 'element-plus'\nimport { composeExport, mapReadPretty } from '../__builtins__'\nimport { PreviewText } from '../preview-text'\nimport FCheckboxGroup from './checkbox-group.vue'\n\nconst CheckboxGroup = connect<typeof FCheckboxGroup>(\n FCheckboxGroup,\n mapProps({ dataSource: 'options', disabled: true }),\n mapReadPretty(PreviewText.Select, {\n multiple: true,\n }),\n)\n\nconst InnerCheckbox = connect<typeof ElCheckbox>(\n ElCheckbox,\n mapProps({\n disabled: true,\n }),\n)\n\nexport const Checkbox = composeExport(InnerCheckbox, {\n Group: CheckboxGroup,\n})\n\nexport default Checkbox\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,KAAWC,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;"}
@@ -1,11 +1,9 @@
1
1
  import { connect as r, mapProps as m } from "@silver-formily/vue";
2
- import { ElDatePicker as o } from "element-plus";
3
- import "vue";
4
- import "@formily/reactive";
5
- import { mapReadPretty as n } from "../__builtins__/shared/transform-component.mjs";
6
- import { PreviewText as c } from "../preview-text/index.mjs";
7
- function t(e = "date", a = "format") {
8
- if (e === "week" && a === "format")
2
+ import { ElDatePicker as n } from "element-plus";
3
+ import { PreviewText as o } from "../preview-text/index.mjs";
4
+ import { mapReadPretty as c } from "../__builtins__/shared/transform-component.mjs";
5
+ function a(e = "date", t = "format") {
6
+ if (e === "week" && t === "format")
9
7
  return "[Week] ww";
10
8
  switch (e) {
11
9
  case "year":
@@ -27,8 +25,8 @@ function t(e = "date", a = "format") {
27
25
  return "YYYY-MM-DD HH:mm:ss";
28
26
  }
29
27
  }
30
- const l = r(
31
- o,
28
+ const d = r(
29
+ n,
32
30
  m(
33
31
  {
34
32
  readOnly: "readonly",
@@ -37,14 +35,14 @@ const l = r(
37
35
  },
38
36
  (e) => ({
39
37
  ...e,
40
- format: e.format || t(e.type),
41
- valueFormat: e.valueFormat || t(e.type, "valueFormat")
38
+ format: e.format || a(e.type),
39
+ valueFormat: e.valueFormat || a(e.type, "valueFormat")
42
40
  })
43
41
  ),
44
- n(c.DatePicker)
42
+ c(o.DatePicker)
45
43
  );
46
44
  export {
47
- l as DatePicker,
48
- l as default
45
+ d as DatePicker,
46
+ d as default
49
47
  };
50
48
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/date-picker/index.ts"],"sourcesContent":["import type { DatePickerProps } from 'element-plus'\nimport { connect, mapProps } from '@silver-formily/vue'\nimport { ElDatePicker } from 'element-plus'\nimport { mapReadPretty } from '../__builtins__'\nimport { PreviewText } from '../preview-text'\n\nfunction getDefaultFormat(type: DatePickerProps['type'] = 'date', formatType = 'format') {\n if (type === 'week' && formatType === 'format') {\n return '[Week] ww'\n }\n else {\n switch (type) {\n case 'year':\n case 'years':\n case 'yearrange': {\n return 'YYYY'\n }\n case 'month':\n case 'months':\n case 'monthrange': {\n return 'YYYY-MM'\n }\n case 'week': {\n return 'ww'\n }\n case 'date':\n case 'dates':\n case 'daterange': {\n return 'YYYY-MM-DD'\n }\n case 'datetime':\n case 'datetimerange': {\n return 'YYYY-MM-DD HH:mm:ss'\n }\n }\n }\n}\n\nexport const DatePicker = connect<typeof ElDatePicker>(\n ElDatePicker,\n mapProps(\n {\n readOnly: 'readonly',\n disabled: true,\n editable: true,\n },\n (props: any) => {\n return {\n ...props,\n format: props.format || getDefaultFormat(props.type),\n valueFormat:\n props.valueFormat || getDefaultFormat(props.type, 'valueFormat'),\n }\n },\n ),\n mapReadPretty(PreviewText.DatePicker),\n)\n\nexport default DatePicker\n"],"names":["getDefaultFormat","type","formatType","DatePicker","connect","ElDatePicker","mapProps","props","mapReadPretty","PreviewText"],"mappings":";;;;;;AAMA,SAASA,EAAiBC,IAAgC,QAAQC,IAAa,UAAU;AACvF,MAAID,MAAS,UAAUC,MAAe;AACpC,WAAO;AAGP,UAAQD,GAAA;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IAET,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IAET,KAAK;AACH,aAAO;AAAA,IAET,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IAET,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,EACT;AAGN;AAEO,MAAME,IAAaC;AAAA,EACxBC;AAAA,EACAC;AAAA,IACE;AAAA,MACE,UAAU;AAAA,MACV,UAAU;AAAA,MACV,UAAU;AAAA,IAAA;AAAA,IAEZ,CAACC,OACQ;AAAA,MACL,GAAGA;AAAA,MACH,QAAQA,EAAM,UAAUP,EAAiBO,EAAM,IAAI;AAAA,MACnD,aACEA,EAAM,eAAeP,EAAiBO,EAAM,MAAM,aAAa;AAAA,IAAA;AAAA,EAErE;AAAA,EAEFC,EAAcC,EAAY,UAAU;AACtC;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/date-picker/index.ts"],"sourcesContent":["import type { DatePickerProps } from 'element-plus'\r\nimport { connect, mapProps } from '@silver-formily/vue'\r\nimport { ElDatePicker } from 'element-plus'\r\nimport { mapReadPretty } from '../__builtins__'\r\nimport { PreviewText } from '../preview-text'\r\n\r\nfunction getDefaultFormat(type: DatePickerProps['type'] = 'date', formatType = 'format') {\r\n if (type === 'week' && formatType === 'format') {\r\n return '[Week] ww'\r\n }\r\n else {\r\n switch (type) {\r\n case 'year':\r\n case 'years':\r\n case 'yearrange': {\r\n return 'YYYY'\r\n }\r\n case 'month':\r\n case 'months':\r\n case 'monthrange': {\r\n return 'YYYY-MM'\r\n }\r\n case 'week': {\r\n return 'ww'\r\n }\r\n case 'date':\r\n case 'dates':\r\n case 'daterange': {\r\n return 'YYYY-MM-DD'\r\n }\r\n case 'datetime':\r\n case 'datetimerange': {\r\n return 'YYYY-MM-DD HH:mm:ss'\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport const DatePicker = connect<typeof ElDatePicker>(\r\n ElDatePicker,\r\n mapProps(\r\n {\r\n readOnly: 'readonly',\r\n disabled: true,\r\n editable: true,\r\n },\r\n (props: any) => {\r\n return {\r\n ...props,\r\n format: props.format || getDefaultFormat(props.type),\r\n valueFormat:\r\n props.valueFormat || getDefaultFormat(props.type, 'valueFormat'),\r\n }\r\n },\r\n ),\r\n mapReadPretty(PreviewText.DatePicker),\r\n)\r\n\r\nexport default DatePicker\r\n"],"names":["getDefaultFormat","type","formatType","DatePicker","connect","ElDatePicker","mapProps","props","mapReadPretty","PreviewText"],"mappings":";;;;AAMA,SAASA,EAAiBC,IAAgC,QAAQC,IAAa,UAAU;AACvF,MAAID,MAAS,UAAUC,MAAe;AACpC,WAAO;AAGP,UAAQD,GAAA;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IAET,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IAET,KAAK;AACH,aAAO;AAAA,IAET,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IAET,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,EACT;AAGN;AAEO,MAAME,IAAaC;AAAA,EACxBC;AAAA,EACAC;AAAA,IACE;AAAA,MACE,UAAU;AAAA,MACV,UAAU;AAAA,MACV,UAAU;AAAA,IAAA;AAAA,IAEZ,CAACC,OACQ;AAAA,MACL,GAAGA;AAAA,MACH,QAAQA,EAAM,UAAUP,EAAiBO,EAAM,IAAI;AAAA,MACnD,aACEA,EAAM,eAAeP,EAAiBO,EAAM,MAAM,aAAa;AAAA,IAAA;AAAA,EAErE;AAAA,EAEFC,EAAcC,EAAY,UAAU;AACtC;"}
@@ -1,16 +1,14 @@
1
1
  import { useField as E, connect as h, mapProps as w } from "@silver-formily/vue";
2
- import { defineComponent as R, ref as m, createElementBlock as f, openBlock as d, normalizeClass as i, createVNode as u, unref as t, mergeProps as P, withCtx as n, withDirectives as z, createBlock as _, createElementVNode as C, createTextVNode as S, toDisplayString as V, renderSlot as T, computed as g, createCommentVNode as q, Fragment as I, nextTick as x } from "vue";
3
- import { ElPopover as N, ElText as D, ClickOutside as A } from "element-plus";
4
- import { reaction as M } from "@formily/reactive";
5
- import "@formily/core";
6
- import "@silver-formily/reactive-vue";
7
- import { composeExport as j } from "../__builtins__/shared/utils.mjs";
8
- import { FormBaseItem as c, fieldFeedbackMapper as F } from "../form-item/index.mjs";
9
- import { Edit as L, Close as G } from "@element-plus/icons-vue";
10
- import { isValid as $, isPlainObj as H } from "@formily/shared";
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
+ import { reaction as D } from "@formily/reactive";
6
+ import { isValid as $, isPlainObj as M } from "@formily/shared";
7
+ import { ElPopover as j, ElText as G, ClickOutside as L } from "element-plus";
11
8
  import { stylePrefix as W } from "../__builtins__/configs/index.mjs";
12
9
  import { o as k } from "../vendor/lodash.mjs";
13
- import '../styles/editable/index.css';const J = /* @__PURE__ */ R({
10
+ import { composeExport as H } from "../__builtins__/shared/utils.mjs";
11
+ import '../styles/editable/index.css';const J = /* @__PURE__ */ z({
14
12
  name: "FEditablePopover",
15
13
  inheritAttrs: !1,
16
14
  __name: "editable-popover",
@@ -39,33 +37,33 @@ import '../styles/editable/index.css';const J = /* @__PURE__ */ R({
39
37
  tooltipLayout: {}
40
38
  },
41
39
  setup(b) {
42
- const a = b, e = E(), r = `${W}-editable`, s = m(), l = m(!1);
40
+ const a = b, e = E(), l = `${W}-editable`, s = m(), r = m(!1);
43
41
  if ($(e.value.data)) {
44
42
  /* istanbul ignore else -- @preserve */
45
43
  $(e.value.data.readPretty) || (e.value.data.readPretty = !0);
46
44
  } else
47
45
  e.value.data = {}, e.value.data.readPretty = !0;
48
46
  function v(o) {
49
- const p = s.value.parentElement;
47
+ const f = s.value.parentElement;
50
48
  /* istanbul ignore else -- @preserve */
51
- p.contains(o.target) || (l.value = !1);
49
+ f.contains(o.target) || (r.value = !1);
52
50
  }
53
51
  function y() {
54
- l.value = !0;
52
+ r.value = !0;
55
53
  }
56
- return M(
54
+ return D(
57
55
  () => e.value.form.queryFeedbacks({
58
56
  type: "error",
59
57
  address: `${e.value.address.entire}.*`
60
58
  }),
61
59
  (o) => {
62
- o.length > 0 && (l.value = !0);
60
+ o.length > 0 && (r.value = !0);
63
61
  }
64
- ), (o, p) => (d(), f("div", {
65
- class: i(r)
62
+ ), (o, f) => (d(), p("div", {
63
+ class: i(l)
66
64
  }, [
67
- u(t(N), P(o.$attrs, {
68
- visible: l.value,
65
+ u(t(j), P(o.$attrs, {
66
+ visible: r.value,
69
67
  title: o.$attrs.title || t(e).title,
70
68
  trigger: "click",
71
69
  width: "auto"
@@ -74,41 +72,41 @@ import '../styles/editable/index.css';const J = /* @__PURE__ */ R({
74
72
  C("div", {
75
73
  ref_key: "contentRef",
76
74
  ref: s,
77
- class: i(`${r}-popover-wrapper`)
75
+ class: i(`${l}-popover-wrapper`)
78
76
  }, [
79
- T(o.$slots, "default")
77
+ A(o.$slots, "default")
80
78
  ], 2)
81
79
  ]),
82
80
  reference: n(() => [
83
- z((d(), _(t(c), P(a, {
84
- class: `${r}-trigger`
81
+ T((d(), _(t(c), P(a, {
82
+ class: `${l}-trigger`
85
83
  }), {
86
84
  default: n(() => [
87
85
  C("div", {
88
- class: i(`${r}-content`),
86
+ class: i(`${l}-content`),
89
87
  onClick: y
90
88
  }, [
91
- u(t(D), null, {
89
+ u(t(G), null, {
92
90
  default: n(() => [
93
91
  S(V(t(e).title), 1)
94
92
  ]),
95
93
  _: 1
96
94
  }),
97
- u(t(L), {
98
- class: i(`${r}-edit-btn`)
95
+ u(t(F), {
96
+ class: i(`${l}-edit-btn`)
99
97
  }, null, 8, ["class"])
100
98
  ], 2)
101
99
  ]),
102
100
  _: 1
103
101
  }, 16, ["class"])), [
104
- [t(A), v]
102
+ [t(L), v]
105
103
  ])
106
104
  ]),
107
105
  _: 3
108
106
  }, 16, ["visible", "title"])
109
107
  ]));
110
108
  }
111
- }), K = /* @__PURE__ */ R({
109
+ }), K = /* @__PURE__ */ z({
112
110
  name: "FEditable",
113
111
  __name: "editable",
114
112
  props: {
@@ -137,48 +135,48 @@ import '../styles/editable/index.css';const J = /* @__PURE__ */ R({
137
135
  editProps: {}
138
136
  },
139
137
  setup(b) {
140
- const a = b, e = E(), r = m(null), s = `${W}-editable`, l = m(null), v = g(() => k(a, "editProps")), y = g(() => H(a.editProps) ? { ...k(a, "editProps"), ...a.editProps } : k(a, "editProps"));
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"));
141
139
  function o() {
142
140
  $(e.value.data) || (e.value.data = {});
143
141
  }
144
142
  o(), e.value.data.readPretty = !0;
145
- async function p() {
146
- e.value.disabled || (o(), e.value.data.readPretty = !1, await x(), l.value.feedbackTooltipRef.updatePopper(), r.value?.querySelector("input")?.focus());
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
146
  function B() {
149
147
  e.value.data?.readPretty !== !0 && (o(), setTimeout(async () => {
150
- e.value.data.readPretty = !0, await x(), l.value?.feedbackTooltipRef.updatePopper();
148
+ e.value.data.readPretty = !0, await x(), r.value?.feedbackTooltipRef.updatePopper();
151
149
  }, 0));
152
150
  }
153
- return (O, X) => (d(), f("div", {
151
+ return (O, X) => (d(), p("div", {
154
152
  ref_key: "innerRef",
155
- ref: r,
153
+ ref: l,
156
154
  class: i([s, t(e).disabled && "is-disabled"])
157
155
  }, [
158
- z((d(), f("div", {
156
+ T((d(), p("div", {
159
157
  class: i(`${s}-content`)
160
158
  }, [
161
159
  u(t(c), P({
162
160
  ref_key: "formItemRef",
163
- ref: l
164
- }, t(e).data?.readPretty === !1 ? y.value : v.value, { onClick: p }), {
161
+ ref: r
162
+ }, t(e).data?.readPretty === !1 ? y.value : v.value, { onClick: f }), {
165
163
  default: n(() => [
166
164
  C("div", null, [
167
- T(O.$slots, "default")
165
+ A(O.$slots, "default")
168
166
  ])
169
167
  ]),
170
168
  _: 3
171
169
  }, 16),
172
- t(e).disabled ? q("", !0) : (d(), f(I, { key: 0 }, [
170
+ t(e).disabled ? q("", !0) : (d(), p(I, { key: 0 }, [
173
171
  t(e).data?.readPretty === !0 ? (d(), _(t(c), {
174
172
  key: 0,
175
173
  size: a.size,
176
174
  "feedback-layout": a.feedbackLayout
177
175
  }, {
178
176
  default: n(() => [
179
- u(t(L), {
177
+ u(t(F), {
180
178
  class: i(`${s}-edit-btn`),
181
- onClick: p
179
+ onClick: f
182
180
  }, null, 8, ["class"])
183
181
  ]),
184
182
  _: 1
@@ -188,7 +186,7 @@ import '../styles/editable/index.css';const J = /* @__PURE__ */ R({
188
186
  "feedback-layout": a.feedbackLayout
189
187
  }, {
190
188
  default: n(() => [
191
- u(t(G), {
189
+ u(t(N), {
192
190
  class: i(`${s}-close-btn`),
193
191
  onClick: B
194
192
  }, null, 8, ["class"])
@@ -197,7 +195,7 @@ import '../styles/editable/index.css';const J = /* @__PURE__ */ R({
197
195
  }, 8, ["size", "feedback-layout"]))
198
196
  ], 64))
199
197
  ], 2)), [
200
- [t(A), B]
198
+ [t(L), B]
201
199
  ])
202
200
  ], 2));
203
201
  }
@@ -206,18 +204,18 @@ import '../styles/editable/index.css';const J = /* @__PURE__ */ R({
206
204
  required: !0,
207
205
  description: "extra"
208
206
  },
209
- F
207
+ R
210
208
  )), U = h(J, w(
211
209
  {
212
210
  required: !0,
213
211
  description: "extra"
214
212
  },
215
- F
216
- )), ue = j(Q, {
213
+ R
214
+ )), de = H(Q, {
217
215
  Popover: U
218
216
  });
219
217
  export {
220
- ue as Editable,
221
- ue as default
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>\nimport type { Field } from '@formily/core'\nimport type { IFormItemProps } from '../form-item/types'\nimport { Edit } from '@element-plus/icons-vue'\nimport { reaction } from '@formily/reactive'\nimport { isValid } from '@formily/shared'\nimport { useField } from '@silver-formily/vue'\nimport { ElPopover, ElText, ClickOutside as vClickOutside } from 'element-plus'\nimport { ref } from 'vue'\nimport { stylePrefix } from '../__builtins__/configs'\nimport { FormBaseItem } from '../form-item'\n\ndefineOptions({\n name: 'FEditablePopover',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<IFormItemProps>(), {\n feedbackLayout: 'popover',\n size: 'default',\n})\n\nconst fieldRef = useField<Field>()\nconst prefixCls = `${stylePrefix}-editable`\nconst contentRef = ref<HTMLElement>()\nconst visible = ref(false)\n\nif (isValid(fieldRef.value.data)) {\n /* istanbul ignore else -- @preserve */\n if (!isValid(fieldRef.value.data.readPretty)) {\n fieldRef.value.data.readPretty = true\n }\n}\nelse {\n fieldRef.value.data = {}\n fieldRef.value.data.readPretty = true\n}\n\nfunction onClickOutside(e) {\n const popoverDOM = contentRef.value.parentElement\n /* istanbul ignore else -- @preserve */\n if (!popoverDOM.contains(e.target)) {\n visible.value = false\n }\n}\nfunction onClick() {\n visible.value = true\n}\n\nreaction(\n () => fieldRef.value.form.queryFeedbacks({\n type: 'error',\n address: `${fieldRef.value.address.entire}.*`,\n }),\n (errorList) => {\n if (errorList.length > 0) {\n visible.value = true\n }\n },\n)\n</script>\n\n<template>\n <div :class=\"prefixCls\">\n <ElPopover\n v-bind=\"$attrs\"\n :visible=\"visible\"\n :title=\"$attrs.title || fieldRef.title\" trigger=\"click\" width=\"auto\"\n >\n <template #default>\n <div ref=\"contentRef\" :class=\"`${prefixCls}-popover-wrapper`\">\n <slot />\n </div>\n </template>\n <template #reference>\n <FormBaseItem v-click-outside=\"onClickOutside\" v-bind=\"props\" :class=\"`${prefixCls}-trigger`\">\n <div :class=\"`${prefixCls}-content`\" @click=\"onClick\">\n <ElText>\n {{ fieldRef.title }}\n </ElText>\n <Edit :class=\"`${prefixCls}-edit-btn`\" />\n </div>\n </FormBaseItem>\n </template>\n </ElPopover>\n </div>\n</template>\n","<script lang=\"ts\" setup>\nimport type { Field } from '@formily/core'\nimport type { IFormItemProps } from '../form-item/types'\nimport { Close, Edit } from '@element-plus/icons-vue'\nimport { isPlainObj, isValid } from '@formily/shared'\nimport { useField } from '@silver-formily/vue'\nimport { ClickOutside as vClickOutside } from 'element-plus'\nimport { omit } from 'lodash-es'\nimport { computed, nextTick, ref } from 'vue'\nimport { stylePrefix } from '../__builtins__/configs'\nimport { FormBaseItem } from '../form-item'\n\ndefineOptions({\n name: 'FEditable',\n})\n\nconst props = withDefaults(defineProps<IFormItemProps & { editProps?: IFormItemProps }>(), {\n feedbackLayout: 'popover',\n size: 'default',\n})\n\nconst fieldRef = useField<Field>()\nconst innerRef = ref<HTMLElement>(null)\nconst prefixCls = `${stylePrefix}-editable`\nconst formItemRef = ref<InstanceType<typeof FormBaseItem>>(null)\n\nconst commonProps = computed(() => omit(props, 'editProps'))\nconst editProps = computed(() => {\n if (isPlainObj(props.editProps)) {\n return { ...omit(props, 'editProps'), ...props.editProps }\n }\n return omit(props, 'editProps')\n})\n\nfunction handleEnsureReadPretty() {\n if (!isValid(fieldRef.value.data)) {\n fieldRef.value.data = {}\n }\n}\n\nhandleEnsureReadPretty()\nfieldRef.value.data.readPretty = true\n\nasync function onClick() {\n if (fieldRef.value.disabled)\n return\n handleEnsureReadPretty()\n fieldRef.value.data.readPretty = false\n await nextTick()\n formItemRef.value.feedbackTooltipRef.updatePopper()\n innerRef.value?.querySelector('input')?.focus()\n}\n\nfunction onClickOutside() {\n if (fieldRef.value.data?.readPretty === true)\n return\n handleEnsureReadPretty()\n // 使用下拉菜单等触发的事件完成应有的操作\n setTimeout(async () => {\n fieldRef.value.data.readPretty = true\n await nextTick()\n formItemRef.value?.feedbackTooltipRef.updatePopper()\n }, 0)\n}\n</script>\n\n<template>\n <div ref=\"innerRef\" :class=\"[prefixCls, fieldRef.disabled && 'is-disabled']\">\n <div v-click-outside=\"onClickOutside\" :class=\"`${prefixCls}-content`\">\n <FormBaseItem ref=\"formItemRef\" v-bind=\"fieldRef.data?.readPretty === false ? editProps : commonProps\" @click=\"onClick\">\n <div>\n <slot />\n </div>\n </FormBaseItem>\n <template v-if=\"!fieldRef.disabled\">\n <template v-if=\"fieldRef.data?.readPretty === true\">\n <FormBaseItem :size=\"props.size\" :feedback-layout=\"props.feedbackLayout\">\n <Edit :class=\"`${prefixCls}-edit-btn`\" @click=\"onClick\" />\n </FormBaseItem>\n </template>\n <template v-else>\n <FormBaseItem :size=\"props.size\" :feedback-layout=\"props.feedbackLayout\">\n <Close :class=\"`${prefixCls}-close-btn`\" @click=\"onClickOutside\" />\n </FormBaseItem>\n </template>\n </template>\n </div>\n </div>\n</template>\n","import type { ElPopover } from 'element-plus'\nimport type { IFormItemProps } from '../form-item/types'\nimport { connect, mapProps } from '@silver-formily/vue'\nimport { composeExport } from '../__builtins__/shared'\nimport { fieldFeedbackMapper } from '../form-item'\nimport FEditablePopover from './editable-popover.vue'\nimport FEditable from './editable.vue'\nimport './style.scss'\n\nexport type EditableProps = IFormItemProps\nexport type EditablePopoverProps = typeof ElPopover\n\nconst EditableInner = connect<typeof FEditable>(FEditable, mapProps(\n {\n required: true,\n description: 'extra',\n },\n fieldFeedbackMapper,\n))\n\nconst EditablePopover = connect<typeof FEditablePopover>(FEditablePopover, mapProps(\n {\n required: true,\n description: 'extra',\n },\n fieldFeedbackMapper,\n))\n\nexport const Editable = composeExport(EditableInner, {\n Popover: EditablePopover,\n})\n\nexport default Editable\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,UAAMA,IAAQC,GAKRC,IAAWC,EAAA,GACXC,IAAY,GAAGC,CAAW,aAC1BC,IAAaC,EAAA,GACbC,IAAUD,EAAI,EAAK;AAEzB,QAAIE,EAAQP,EAAS,MAAM,IAAI,GAAG;AAAA,MAAA;AAEhC,MAAKO,EAAQP,EAAS,MAAM,KAAK,UAAU,MACzCA,EAAS,MAAM,KAAK,aAAa;AAAA,IAErC;AAEE,MAAAA,EAAS,MAAM,OAAO,CAAA,GACtBA,EAAS,MAAM,KAAK,aAAa;AAGnC,aAASQ,EAAeC,GAAG;AACzB,YAAMC,IAAaN,EAAW,MAAM;AAAA,MAAA;AAEpC,MAAKM,EAAW,SAASD,EAAE,MAAM,MAC/BH,EAAQ,QAAQ;AAAA,IAEpB;AACA,aAASK,IAAU;AACjB,MAAAL,EAAQ,QAAQ;AAAA,IAClB;AAEA,WAAAM;AAAA,MACE,MAAMZ,EAAS,MAAM,KAAK,eAAe;AAAA,QACvC,MAAM;AAAA,QACN,SAAS,GAAGA,EAAS,MAAM,QAAQ,MAAM;AAAA,MAAA,CAC1C;AAAA,MACD,CAACa,MAAc;AACb,QAAIA,EAAU,SAAS,MACrBP,EAAQ,QAAQ;AAAA,MAEpB;AAAA,IAAA,mBAKAQ,EAsBM,OAAA;AAAA,MAtBA,SAAOZ,CAAS;AAAA,IAAA;MACpBa,EAoBYC,EAAAC,CAAA,GApBZC,EAoBYC,EAAA,QAnBI;AAAA,QACb,SAASb,EAAA;AAAA,QACT,OAAOc,EAAAA,OAAO,SAASJ,EAAAhB,CAAA,EAAS;AAAA,QAAO,SAAQ;AAAA,QAAQ,OAAM;AAAA,MAAA;QAEnD,WACT,MAEM;AAAA,UAFNqB,EAEM,OAAA;AAAA,qBAFG;AAAA,YAAJ,KAAIjB;AAAA,YAAc,YAAUF,CAAS,kBAAA;AAAA,UAAA;YACxCoB,EAAQH,EAAA,QAAA,SAAA;AAAA,UAAA;;QAGD,aACT,MAOe;AAAA,kBAPfI,EAOeP,EAAAQ,CAAA,GAPfN,EAOepB,GAP6C;AAAA,YAAG,UAAUI,CAAS;AAAA,UAAA;uBAChF,MAKM;AAAA,cALNmB,EAKM,OAAA;AAAA,gBALA,YAAUnB,CAAS,UAAA;AAAA,gBAAa,SAAAS;AAAA,cAAA;gBACpCI,EAESC,EAAAS,CAAA,GAAA,MAAA;AAAA,6BADP,MAAoB;AAAA,oBAAjBC,EAAAC,EAAAX,EAAAhB,CAAA,EAAS,KAAK,GAAA,CAAA;AAAA,kBAAA;;;gBAEnBe,EAAyCC,EAAAY,CAAA,GAAA;AAAA,kBAAlC,YAAU1B,CAAS,WAAA;AAAA,gBAAA;;;;;mBALCM,CAAc;AAAA,UAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC3DrD,UAAMV,IAAQC,GAKRC,IAAWC,EAAA,GACX4B,IAAWxB,EAAiB,IAAI,GAChCH,IAAY,GAAGC,CAAW,aAC1B2B,IAAczB,EAAuC,IAAI,GAEzD0B,IAAcC,EAAS,MAAMC,EAAKnC,GAAO,WAAW,CAAC,GACrDoC,IAAYF,EAAS,MACrBG,EAAWrC,EAAM,SAAS,IACrB,EAAE,GAAGmC,EAAKnC,GAAO,WAAW,GAAG,GAAGA,EAAM,UAAA,IAE1CmC,EAAKnC,GAAO,WAAW,CAC/B;AAED,aAASsC,IAAyB;AAChC,MAAK7B,EAAQP,EAAS,MAAM,IAAI,MAC9BA,EAAS,MAAM,OAAO,CAAA;AAAA,IAE1B;AAEA,IAAAoC,EAAA,GACApC,EAAS,MAAM,KAAK,aAAa;AAEjC,mBAAeW,IAAU;AACvB,MAAIX,EAAS,MAAM,aAEnBoC,EAAA,GACApC,EAAS,MAAM,KAAK,aAAa,IACjC,MAAMqC,EAAA,GACNP,EAAY,MAAM,mBAAmB,aAAA,GACrCD,EAAS,OAAO,cAAc,OAAO,GAAG,MAAA;AAAA,IAC1C;AAEA,aAASrB,IAAiB;AACxB,MAAIR,EAAS,MAAM,MAAM,eAAe,OAExCoC,EAAA,GAEA,WAAW,YAAY;AACrB,QAAApC,EAAS,MAAM,KAAK,aAAa,IACjC,MAAMqC,EAAA,GACNP,EAAY,OAAO,mBAAmB,aAAA;AAAA,MACxC,GAAG,CAAC;AAAA,IACN;2BAIEhB,EAoBM,OAAA;AAAA,eApBG;AAAA,MAAJ,KAAIe;AAAA,MAAY,OAAKS,EAAA,CAAGpC,GAAWc,EAAAhB,CAAA,EAAS,YAAQ,aAAA,CAAA;AAAA,IAAA;cACvDc,EAkBM,OAAA;AAAA,QAlBiC,YAAUZ,CAAS,UAAA;AAAA,MAAA;QACxDa,EAIeC,MAJfE,EAIe;AAAA,mBAJG;AAAA,UAAJ,KAAIY;AAAA,QAAA,GAAsBd,EAAAhB,CAAA,EAAS,MAAM,eAAU,KAAakC,EAAA,QAAYH,EAAA,OAAW,EAAG,SAAApB,EAAA,CAAc,GAAA;AAAA,qBACpH,MAEM;AAAA,YAFNU,EAEM,OAAA,MAAA;AAAA,cADJC,EAAQH,EAAA,QAAA,SAAA;AAAA,YAAA;;;;QAGKH,EAAAhB,CAAA,EAAS,6BAA1Bc,EAWWyB,GAAA,EAAA,KAAA,KAAA;AAAA,UAVOvB,EAAAhB,CAAA,EAAS,MAAM,eAAU,WACvCuB,EAEeP,EAAAQ,CAAA,GAAA;AAAA;YAFA,MAAM1B,EAAM;AAAA,YAAO,mBAAiBA,EAAM;AAAA,UAAA;uBACvD,MAA0D;AAAA,cAA1DiB,EAA0DC,EAAAY,CAAA,GAAA;AAAA,gBAAnD,YAAU1B,CAAS,WAAA;AAAA,gBAAc,SAAAS;AAAA,cAAA;;;sDAI1CY,EAEeP,EAAAQ,CAAA,GAAA;AAAA;YAFA,MAAM1B,EAAM;AAAA,YAAO,mBAAiBA,EAAM;AAAA,UAAA;uBACvD,MAAmE;AAAA,cAAnEiB,EAAmEC,EAAAwB,CAAA,GAAA;AAAA,gBAA3D,YAAUtC,CAAS,YAAA;AAAA,gBAAe,SAAOM;AAAA,cAAA;;;;;;eAdnCA,CAAc;AAAA,MAAA;;;ICxDlCiC,IAAgBC,EAA0BC,GAAWC;AAAA,EACzD;AAAA,IACE,UAAU;AAAA,IACV,aAAa;AAAA,EAAA;AAAA,EAEfC;AACF,CAAC,GAEKC,IAAkBJ,EAAiCK,GAAkBH;AAAA,EACzE;AAAA,IACE,UAAU;AAAA,IACV,aAAa;AAAA,EAAA;AAAA,EAEfC;AACF,CAAC,GAEYG,KAAWC,EAAcR,GAAe;AAAA,EACnD,SAASK;AACX,CAAC;"}
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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"}
package/esm/form/form.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as h, createBlock as f, createCommentVNode as S, openBlock as p, unref as t, withCtx as i, createVNode as n, mergeProps as d, renderSlot as s, withModifiers as F } from "vue";
2
2
  import { useForm as v, FormProvider as w } from "@silver-formily/vue";
3
- import { _ as c } from "../form-layout/form-layout.mjs";
4
- import { PreviewText as b } from "../preview-text/index.mjs";
3
+ import { PreviewText as c } from "../preview-text/index.mjs";
4
+ import { _ as b } from "../form-layout/form-layout.mjs";
5
5
  const $ = /* @__PURE__ */ h({
6
6
  name: "FForm",
7
7
  inheritAttrs: !1,
@@ -30,11 +30,11 @@ const $ = /* @__PURE__ */ h({
30
30
  form: o.form
31
31
  }, {
32
32
  default: i(() => [
33
- n(t(b), {
33
+ n(t(c), {
34
34
  placeholder: o.previewTextPlaceholder
35
35
  }, {
36
36
  default: i(() => [
37
- n(t(c), d(m.$attrs, {
37
+ n(t(b), d(m.$attrs, {
38
38
  onSubmit: r[0] || (r[0] = (e) => a(e, l.form))
39
39
  }), {
40
40
  default: i(() => [
@@ -47,12 +47,12 @@ const $ = /* @__PURE__ */ h({
47
47
  }, 8, ["placeholder"])
48
48
  ]),
49
49
  _: 3
50
- }, 8, ["form"])) : t(u) ? (p(), f(t(b), {
50
+ }, 8, ["form"])) : t(u) ? (p(), f(t(c), {
51
51
  key: 1,
52
52
  placeholder: o.previewTextPlaceholder
53
53
  }, {
54
54
  default: i(() => [
55
- n(t(c), d(m.$attrs, {
55
+ n(t(b), d(m.$attrs, {
56
56
  onSubmit: r[1] || (r[1] = F((e) => a(e, t(u)), ["prevent", "stop"]))
57
57
  }), {
58
58
  default: i(() => [
@@ -1 +1 @@
1
- {"version":3,"file":"form.mjs","sources":["../../src/form/form.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { Form as FormType, IFormFeedback } from '@formily/core'\nimport type { PropType } from 'vue'\nimport { FormProvider, useForm } from '@silver-formily/vue'\nimport { FormLayout } from '../form-layout'\nimport { PreviewText } from '../preview-text'\n\ndefineOptions({\n name: 'FForm',\n inheritAttrs: false,\n})\n\nconst props = defineProps({\n form: {\n type: Object as PropType<FormType>,\n },\n previewTextPlaceholder: {\n type: String,\n },\n onAutoSubmit: {\n type: Function as PropType<(values: FormType['values']) => Promise<any>>,\n },\n onAutoSubmitFailed: {\n type: Function as PropType<(error: IFormFeedback[]) => void>,\n },\n})\n\nconst top = useForm()\n\nfunction handleSubmit(e: Event, form: FormType) {\n form\n .submit(values => props.onAutoSubmit?.(values))\n .catch(error => props.onAutoSubmitFailed?.(error))\n}\n</script>\n\n<template>\n <FormProvider v-if=\"props.form\" :form=\"props.form\">\n <PreviewText :placeholder=\"props.previewTextPlaceholder\">\n <FormLayout v-bind=\"$attrs\" @submit=\"(e) => handleSubmit(e, form)\">\n <slot />\n </FormLayout>\n </PreviewText>\n </FormProvider>\n <template v-else-if=\"top\">\n <PreviewText :placeholder=\"props.previewTextPlaceholder\">\n <FormLayout\n v-bind=\"$attrs\"\n @submit.prevent.stop=\"(e) => handleSubmit(e, top)\"\n >\n <slot />\n </FormLayout>\n </PreviewText>\n </template>\n</template>\n"],"names":["props","__props","top","useForm","handleSubmit","e","form","values","error","_createBlock","_unref","FormProvider","_createVNode","PreviewText","FormLayout","_mergeProps","_ctx","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAYA,UAAMA,IAAQC,GAeRC,IAAMC,EAAA;AAEZ,aAASC,EAAaC,GAAUC,GAAgB;AAC9C,MAAAA,EACG,OAAO,CAAAC,MAAUP,EAAM,eAAeO,CAAM,CAAC,EAC7C,MAAM,CAAAC,MAASR,EAAM,qBAAqBQ,CAAK,CAAC;AAAA,IACrD;qBAIsBR,EAAM,aAA1BS,EAMeC,EAAAC,CAAA,GAAA;AAAA;MANkB,MAAMX,EAAM;AAAA,IAAA;iBAC3C,MAIc;AAAA,QAJdY,EAIcF,EAAAG,CAAA,GAAA;AAAA,UAJA,aAAab,EAAM;AAAA,QAAA;qBAC/B,MAEa;AAAA,YAFbY,EAEaF,EAAAI,CAAA,GAFbC,EAEaC,EAAA,QAFa;AAAA,cAAG,2BAAS,MAAMZ,EAAa,GAAGH,EAAA,IAAI;AAAA,YAAA;yBAC9D,MAAQ;AAAA,gBAARgB,EAAQD,EAAA,QAAA,SAAA;AAAA,cAAA;;;;;;;;uBAION,EAAAR,CAAA,UACnBO,EAOcC,EAAAG,CAAA,GAAA;AAAA;MAPA,aAAab,EAAM;AAAA,IAAA;iBAC/B,MAKa;AAAA,QALbY,EAKaF,EAAAI,CAAA,GALbC,EAKaC,EAAA,QAJG;AAAA,UACb,6BAAsB,MAAMZ,EAAa,GAAGM,EAAAR,CAAA,CAAG,GAAA,CAAA,WAAA,MAAA,CAAA;AAAA,QAAA;qBAEhD,MAAQ;AAAA,YAARe,EAAQD,EAAA,QAAA,SAAA;AAAA,UAAA;;;;;;;;"}
1
+ {"version":3,"file":"form.mjs","sources":["../../src/form/form.vue"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport type { Form as FormType, IFormFeedback } from '@formily/core'\r\nimport type { PropType } from 'vue'\r\nimport { FormProvider, useForm } from '@silver-formily/vue'\r\nimport { FormLayout } from '../form-layout'\r\nimport { PreviewText } from '../preview-text'\r\n\r\ndefineOptions({\r\n name: 'FForm',\r\n inheritAttrs: false,\r\n})\r\n\r\nconst props = defineProps({\r\n form: {\r\n type: Object as PropType<FormType>,\r\n },\r\n previewTextPlaceholder: {\r\n type: String,\r\n },\r\n onAutoSubmit: {\r\n type: Function as PropType<(values: FormType['values']) => Promise<any>>,\r\n },\r\n onAutoSubmitFailed: {\r\n type: Function as PropType<(error: IFormFeedback[]) => void>,\r\n },\r\n})\r\n\r\nconst top = useForm()\r\n\r\nfunction handleSubmit(e: Event, form: FormType) {\r\n form\r\n .submit(values => props.onAutoSubmit?.(values))\r\n .catch(error => props.onAutoSubmitFailed?.(error))\r\n}\r\n</script>\r\n\r\n<template>\r\n <FormProvider v-if=\"props.form\" :form=\"props.form\">\r\n <PreviewText :placeholder=\"props.previewTextPlaceholder\">\r\n <FormLayout v-bind=\"$attrs\" @submit=\"(e) => handleSubmit(e, form)\">\r\n <slot />\r\n </FormLayout>\r\n </PreviewText>\r\n </FormProvider>\r\n <template v-else-if=\"top\">\r\n <PreviewText :placeholder=\"props.previewTextPlaceholder\">\r\n <FormLayout\r\n v-bind=\"$attrs\"\r\n @submit.prevent.stop=\"(e) => handleSubmit(e, top)\"\r\n >\r\n <slot />\r\n </FormLayout>\r\n </PreviewText>\r\n </template>\r\n</template>\r\n"],"names":["props","__props","top","useForm","handleSubmit","e","form","values","error","_createBlock","_unref","FormProvider","_createVNode","PreviewText","FormLayout","_mergeProps","_ctx","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAYA,UAAMA,IAAQC,GAeRC,IAAMC,EAAA;AAEZ,aAASC,EAAaC,GAAUC,GAAgB;AAC9C,MAAAA,EACG,OAAO,CAAAC,MAAUP,EAAM,eAAeO,CAAM,CAAC,EAC7C,MAAM,CAAAC,MAASR,EAAM,qBAAqBQ,CAAK,CAAC;AAAA,IACrD;qBAIsBR,EAAM,aAA1BS,EAMeC,EAAAC,CAAA,GAAA;AAAA;MANkB,MAAMX,EAAM;AAAA,IAAA;iBAC3C,MAIc;AAAA,QAJdY,EAIcF,EAAAG,CAAA,GAAA;AAAA,UAJA,aAAab,EAAM;AAAA,QAAA;qBAC/B,MAEa;AAAA,YAFbY,EAEaF,EAAAI,CAAA,GAFbC,EAEaC,EAAA,QAFa;AAAA,cAAG,2BAAS,MAAMZ,EAAa,GAAGH,EAAA,IAAI;AAAA,YAAA;yBAC9D,MAAQ;AAAA,gBAARgB,EAAQD,EAAA,QAAA,SAAA;AAAA,cAAA;;;;;;;;uBAION,EAAAR,CAAA,UACnBO,EAOcC,EAAAG,CAAA,GAAA;AAAA;MAPA,aAAab,EAAM;AAAA,IAAA;iBAC/B,MAKa;AAAA,QALbY,EAKaF,EAAAI,CAAA,GALbC,EAKaC,EAAA,QAJG;AAAA,UACb,6BAAsB,MAAMZ,EAAa,GAAGM,EAAAR,CAAA,CAAG,GAAA,CAAA,WAAA,MAAA,CAAA;AAAA,QAAA;qBAEhD,MAAQ;AAAA,YAARe,EAAQD,EAAA,QAAA,SAAA;AAAA,UAAA;;;;;;;;"}