@ibiz-template/mob-vue3-components 0.0.4 → 0.0.6

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 (158) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/index.system.min.js +6 -6
  3. package/dist/index.system.min.js.map +1 -1
  4. package/es/_virtual/customParseFormat.mjs +3 -0
  5. package/es/common/index.mjs +6 -1
  6. package/es/common/preset-view-back/preset-view-back.css +1 -0
  7. package/es/common/preset-view-back/preset-view-back.d.ts +17 -0
  8. package/es/common/preset-view-back/preset-view-back.mjs +49 -0
  9. package/es/common/preset-view-header/preset-view-header.css +1 -0
  10. package/es/common/preset-view-header/preset-view-header.d.ts +20 -0
  11. package/es/common/preset-view-header/preset-view-header.mjs +47 -0
  12. package/es/control/app-menu/app-menu.css +1 -1
  13. package/es/control/app-menu/app-menu.d.ts +1 -3
  14. package/es/control/app-menu/app-menu.mjs +35 -134
  15. package/es/control/app-menu/index.d.ts +1 -3
  16. package/es/control/app-menu-icon-view/app-menu-icon-view.css +1 -0
  17. package/es/control/app-menu-icon-view/app-menu-icon-view.d.ts +38 -0
  18. package/es/control/app-menu-icon-view/app-menu-icon-view.mjs +76 -0
  19. package/es/control/app-menu-icon-view/app-menu-icon-view.provider.d.ts +13 -0
  20. package/es/control/app-menu-icon-view/app-menu-icon-view.provider.mjs +14 -0
  21. package/es/control/app-menu-icon-view/index.d.ts +35 -0
  22. package/es/control/app-menu-icon-view/index.mjs +18 -0
  23. package/es/control/app-menu-list-view/app-menu-list-view.css +1 -0
  24. package/es/control/app-menu-list-view/app-menu-list-view.d.ts +37 -0
  25. package/es/control/app-menu-list-view/app-menu-list-view.mjs +84 -0
  26. package/es/control/app-menu-list-view/app-menu-list-view.provider.d.ts +13 -0
  27. package/es/control/app-menu-list-view/app-menu-list-view.provider.mjs +14 -0
  28. package/es/control/app-menu-list-view/index.d.ts +34 -0
  29. package/es/control/app-menu-list-view/index.mjs +18 -0
  30. package/es/control/dashboard/portlet/menu-portlet/menu-portlet.mjs +1 -2
  31. package/es/control/form/form-detail/form-button/form-button.css +1 -1
  32. package/es/control/form/form-detail/form-button/form-button.mjs +2 -1
  33. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  34. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs +1 -0
  35. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.mjs +2 -1
  36. package/es/control/form/form-detail/form-mdctrl/form-mdctrl.css +1 -1
  37. package/es/control/form/form-detail/form-mdctrl/form-mdctrl.d.ts +1 -0
  38. package/es/control/form/form-detail/form-mdctrl/form-mdctrl.mjs +7 -3
  39. package/es/control/form/form-detail/form-mdctrl/index.d.ts +8 -0
  40. package/es/control/form/form-detail/form-mdctrl/index.mjs +1 -1
  41. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
  42. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.d.ts +10 -2
  43. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs +29 -17
  44. package/es/control/form/form-detail/form-page/form-page-item/form-page-item.css +1 -1
  45. package/es/control/form/form-detail/form-page/form-page-item/form-page-item.mjs +1 -1
  46. package/es/control/form/form-detail/form-tab-page/form-tab-page.mjs +1 -1
  47. package/es/control/form/form-detail/form-tab-panel/form-tab-panel.css +1 -1
  48. package/es/control/form/form-detail/form-tab-panel/form-tab-panel.mjs +14 -6
  49. package/es/control/form/form-detail/index.mjs +6 -0
  50. package/es/control/form/index.mjs +6 -0
  51. package/es/control/index.d.ts +2 -0
  52. package/es/control/index.mjs +8 -0
  53. package/es/editor/cascader/ibiz-cascader/ibiz-cascader.css +1 -1
  54. package/es/editor/cascader/ibiz-cascader/ibiz-cascader.d.ts +1 -1
  55. package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.d.ts +1 -1
  56. package/es/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.d.ts +1 -1
  57. package/es/editor/color-picker/ibiz-color-picker/ibiz-color-picker.d.ts +1 -1
  58. package/es/editor/common/data-mpicker/ibiz-data-mpicker.css +1 -0
  59. package/es/editor/common/data-mpicker/ibiz-data-mpicker.d.ts +44 -0
  60. package/es/editor/common/data-mpicker/ibiz-data-mpicker.mjs +139 -0
  61. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  62. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.d.ts +4 -3
  63. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +38 -31
  64. package/es/editor/data-picker/ibiz-picker/ibiz-picker.d.ts +1 -1
  65. package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.d.ts +1 -1
  66. package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.d.ts +1 -1
  67. package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.css +1 -1
  68. package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.d.ts +1 -1
  69. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.d.ts +1 -1
  70. package/es/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.css +1 -1
  71. package/es/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.d.ts +3 -6
  72. package/es/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.mjs +28 -104
  73. package/es/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.css +1 -1
  74. package/es/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.d.ts +1 -1
  75. package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.d.ts +1 -1
  76. package/es/editor/rate/ibiz-rate/ibiz-rate.d.ts +1 -1
  77. package/es/editor/slider/ibiz-slider/ibiz-slider.d.ts +1 -1
  78. package/es/editor/span/span/span.css +1 -1
  79. package/es/editor/span/span/span.d.ts +27 -1
  80. package/es/editor/span/span/span.mjs +78 -28
  81. package/es/editor/span/span-link/span-link.d.ts +1 -1
  82. package/es/editor/stepper/ibiz-stepper/ibiz-stepper.d.ts +1 -1
  83. package/es/editor/switch/ibiz-switch/ibiz-switch.d.ts +1 -1
  84. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.d.ts +1 -1
  85. package/es/editor/text-box/input/input.d.ts +1 -1
  86. package/es/editor/upload/ibiz-carousel/ibiz-carousel.d.ts +1 -1
  87. package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.d.ts +1 -1
  88. package/es/editor/upload/ibiz-image-select/ibiz-image-select.d.ts +1 -1
  89. package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.d.ts +1 -1
  90. package/es/index.d.ts +1 -0
  91. package/es/index.mjs +55 -1
  92. package/es/node_modules/.pnpm/dayjs@1.11.10/node_modules/dayjs/plugin/customParseFormat.mjs +13 -0
  93. package/es/panel-component/panel-button/index.d.ts +1 -1
  94. package/es/panel-component/panel-button/panel-button.d.ts +1 -1
  95. package/es/panel-component/view-content-panel-container/view-content-panel-container.mjs +7 -2
  96. package/es/panel-component/view-header-panel-container/index.d.ts +1 -1
  97. package/es/panel-component/view-header-panel-container/view-header-panel-container.css +1 -1
  98. package/es/panel-component/view-header-panel-container/view-header-panel-container.d.ts +1 -1
  99. package/es/panel-component/view-header-panel-container/view-header-panel-container.mjs +6 -12
  100. package/es/util/store/view-stack/view-stack.d.ts +1 -1
  101. package/es/view-engine/mob-edit-view.engine.mjs +1 -2
  102. package/es/view-engine/mob-wf-dyna-action-view.engine.mjs +1 -1
  103. package/es/view-engine/mob-wf-dyna-start-view.engine.mjs +1 -1
  104. package/lib/_virtual/customParseFormat.cjs +5 -0
  105. package/lib/common/index.cjs +5 -0
  106. package/lib/common/preset-view-back/preset-view-back.cjs +51 -0
  107. package/lib/common/preset-view-back/preset-view-back.css +1 -0
  108. package/lib/common/preset-view-header/preset-view-header.cjs +49 -0
  109. package/lib/common/preset-view-header/preset-view-header.css +1 -0
  110. package/lib/control/app-menu/app-menu.cjs +34 -133
  111. package/lib/control/app-menu/app-menu.css +1 -1
  112. package/lib/control/app-menu-icon-view/app-menu-icon-view.cjs +78 -0
  113. package/lib/control/app-menu-icon-view/app-menu-icon-view.css +1 -0
  114. package/lib/control/app-menu-icon-view/app-menu-icon-view.provider.cjs +16 -0
  115. package/lib/control/app-menu-icon-view/index.cjs +23 -0
  116. package/lib/control/app-menu-list-view/app-menu-list-view.cjs +86 -0
  117. package/lib/control/app-menu-list-view/app-menu-list-view.css +1 -0
  118. package/lib/control/app-menu-list-view/app-menu-list-view.provider.cjs +16 -0
  119. package/lib/control/app-menu-list-view/index.cjs +23 -0
  120. package/lib/control/dashboard/portlet/menu-portlet/menu-portlet.cjs +1 -2
  121. package/lib/control/form/form-detail/form-button/form-button.cjs +2 -1
  122. package/lib/control/form/form-detail/form-button/form-button.css +1 -1
  123. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  124. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.cjs +1 -0
  125. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.cjs +2 -1
  126. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl.cjs +6 -2
  127. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl.css +1 -1
  128. package/lib/control/form/form-detail/form-mdctrl/index.cjs +6 -0
  129. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.cjs +28 -16
  130. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
  131. package/lib/control/form/form-detail/form-page/form-page-item/form-page-item.cjs +1 -1
  132. package/lib/control/form/form-detail/form-page/form-page-item/form-page-item.css +1 -1
  133. package/lib/control/form/form-detail/form-tab-page/form-tab-page.cjs +1 -1
  134. package/lib/control/form/form-detail/form-tab-panel/form-tab-panel.cjs +14 -6
  135. package/lib/control/form/form-detail/form-tab-panel/form-tab-panel.css +1 -1
  136. package/lib/control/form/form-detail/index.cjs +12 -0
  137. package/lib/control/form/index.cjs +12 -0
  138. package/lib/control/index.cjs +72 -56
  139. package/lib/editor/cascader/ibiz-cascader/ibiz-cascader.css +1 -1
  140. package/lib/editor/common/data-mpicker/ibiz-data-mpicker.cjs +141 -0
  141. package/lib/editor/common/data-mpicker/ibiz-data-mpicker.css +1 -0
  142. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +38 -31
  143. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  144. package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.css +1 -1
  145. package/lib/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.cjs +27 -103
  146. package/lib/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.css +1 -1
  147. package/lib/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.css +1 -1
  148. package/lib/editor/span/span/span.cjs +77 -27
  149. package/lib/editor/span/span/span.css +1 -1
  150. package/lib/index.cjs +160 -36
  151. package/lib/node_modules/.pnpm/dayjs@1.11.10/node_modules/dayjs/plugin/customParseFormat.cjs +17 -0
  152. package/lib/panel-component/view-content-panel-container/view-content-panel-container.cjs +7 -2
  153. package/lib/panel-component/view-header-panel-container/view-header-panel-container.cjs +6 -12
  154. package/lib/panel-component/view-header-panel-container/view-header-panel-container.css +1 -1
  155. package/lib/view-engine/mob-edit-view.engine.cjs +1 -2
  156. package/lib/view-engine/mob-wf-dyna-action-view.engine.cjs +1 -1
  157. package/lib/view-engine/mob-wf-dyna-start-view.engine.cjs +1 -1
  158. package/package.json +6 -6
@@ -50,8 +50,8 @@ export declare const IBizCheckbox: import("vue").DefineComponent<{
50
50
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
51
51
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
52
52
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
53
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
54
53
  onInfoTextChange?: ((_text: string) => any) | undefined;
54
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
55
55
  }, {
56
56
  disabled: boolean;
57
57
  readonly: boolean;
@@ -53,8 +53,8 @@ export declare const IBizCheckboxList: import("vue").DefineComponent<{
53
53
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
54
54
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
55
55
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
56
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
57
56
  onInfoTextChange?: ((_text: string) => any) | undefined;
57
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
58
58
  }, {
59
59
  disabled: boolean;
60
60
  readonly: boolean;
@@ -54,8 +54,8 @@ export declare const IBizColorPicker: import("vue").DefineComponent<{
54
54
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
55
55
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
56
56
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
57
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
58
57
  onInfoTextChange?: ((_text: string) => any) | undefined;
58
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
59
59
  }, {
60
60
  disabled: boolean;
61
61
  readonly: boolean;
@@ -0,0 +1 @@
1
+ .ibiz-data-mpicker .ibiz-data-mpicker-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-base-tight)}.ibiz-data-mpicker .ibiz-data-mpicker-toolbar button{padding:0;background-color:transparent;border:none}.ibiz-data-mpicker-toolbar__confirm{color:var(--ibiz-color-primary)}.ibiz-data-mpicker-toolbar__cancel{color:var(--ibiz-color-text-3)}.ibiz-data-mpicker .ibiz-data-mpicker-columns{min-height:30vh;max-height:50vh;overflow:auto}.ibiz-data-mpicker .ibiz-data-mpicker-columns .van-cell-group{height:100%;overflow:auto}.ibiz-data-mpicker .ibiz-data-mpicker-columns .van-cell{justify-content:flex-end;padding:var(--ibiz-spacing-base-tight)}.ibiz-data-mpicker .van-cell-group--inset{margin:0}
@@ -0,0 +1,44 @@
1
+ import { Ref, PropType } from 'vue';
2
+ import './ibiz-data-mpicker.scss';
3
+ export declare const IBizDataMPicker: import("vue").DefineComponent<{
4
+ value: {
5
+ type: PropType<string[]>;
6
+ default: never[];
7
+ };
8
+ items: {
9
+ type: PropType<IData[]>;
10
+ default: () => never[];
11
+ };
12
+ showPicker: {
13
+ type: BooleanConstructor;
14
+ default: boolean;
15
+ };
16
+ }, {
17
+ ns: import("@ibiz-template/core").Namespace;
18
+ checkboxRefs: Ref<IData>;
19
+ curValue: import("vue").WritableComputedRef<string[]>;
20
+ emit: (event: "change" | "update:showPicker", ...args: any[]) => void;
21
+ toggle: (index: number) => void;
22
+ onCancel: (e: Event) => void;
23
+ onConfirm: (e: Event) => void;
24
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:showPicker")[], "change" | "update:showPicker", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
25
+ value: {
26
+ type: PropType<string[]>;
27
+ default: never[];
28
+ };
29
+ items: {
30
+ type: PropType<IData[]>;
31
+ default: () => never[];
32
+ };
33
+ showPicker: {
34
+ type: BooleanConstructor;
35
+ default: boolean;
36
+ };
37
+ }>> & {
38
+ onChange?: ((...args: any[]) => any) | undefined;
39
+ "onUpdate:showPicker"?: ((...args: any[]) => any) | undefined;
40
+ }, {
41
+ value: string[];
42
+ items: IData[];
43
+ showPicker: boolean;
44
+ }, {}>;
@@ -0,0 +1,139 @@
1
+ import { isVNode, ref, computed, watch, createTextVNode, createVNode, resolveComponent, defineComponent } from 'vue';
2
+ import { useNamespace } from '@ibiz-template/vue3-util';
3
+ import './ibiz-data-mpicker.css';
4
+ import { clone } from 'ramda';
5
+
6
+ "use strict";
7
+ function _isSlot(s) {
8
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
9
+ }
10
+ const IBizDataMPicker = /* @__PURE__ */ defineComponent({
11
+ name: "IBizDataMPicker",
12
+ props: {
13
+ value: {
14
+ type: Object,
15
+ // eslint-disable-next-line vue/require-valid-default-prop
16
+ default: []
17
+ },
18
+ items: {
19
+ type: Object,
20
+ // eslint-disable-next-line vue/require-valid-default-prop
21
+ default: () => []
22
+ },
23
+ showPicker: {
24
+ type: Boolean,
25
+ default: false
26
+ }
27
+ },
28
+ emits: ["update:showPicker", "change"],
29
+ setup(props, {
30
+ emit
31
+ }) {
32
+ const ns = useNamespace("data-mpicker");
33
+ const localSelectValue = ref([]);
34
+ const curValue = computed({
35
+ get() {
36
+ return localSelectValue.value;
37
+ },
38
+ set(select) {
39
+ localSelectValue.value = select;
40
+ }
41
+ });
42
+ watch(() => props.value, (newVal) => {
43
+ if (newVal || newVal === null) {
44
+ localSelectValue.value = newVal;
45
+ }
46
+ }, {
47
+ immediate: true
48
+ });
49
+ const onConfirm = (e) => {
50
+ e.stopPropagation();
51
+ emit("update:showPicker", false);
52
+ const value = clone(localSelectValue.value);
53
+ emit("change", value);
54
+ };
55
+ const onCancel = (e) => {
56
+ e.stopPropagation();
57
+ emit("update:showPicker", false);
58
+ localSelectValue.value = props.value;
59
+ };
60
+ const checkboxRefs = ref([]);
61
+ const toggle = (index) => {
62
+ checkboxRefs.value[index].toggle();
63
+ };
64
+ return {
65
+ ns,
66
+ checkboxRefs,
67
+ curValue,
68
+ emit,
69
+ toggle,
70
+ onCancel,
71
+ onConfirm
72
+ };
73
+ },
74
+ render() {
75
+ const renderToolbar = () => {
76
+ return createVNode("div", {
77
+ "class": this.ns.b("toolbar")
78
+ }, [createVNode("button", {
79
+ "type": "button",
80
+ "class": this.ns.be("toolbar", "cancel"),
81
+ "onClick": (e) => {
82
+ this.onCancel(e);
83
+ }
84
+ }, [createTextVNode("\u53D6\u6D88")]), createVNode("button", {
85
+ "type": "button",
86
+ "class": this.ns.be("toolbar", "confirm"),
87
+ "onClick": (e) => {
88
+ this.onConfirm(e);
89
+ }
90
+ }, [createTextVNode("\u786E\u5B9A")])]);
91
+ };
92
+ const renderColumns = () => {
93
+ let _slot;
94
+ return createVNode(resolveComponent("van-checkbox-group"), {
95
+ "class": this.ns.b("columns"),
96
+ "modelValue": this.curValue,
97
+ "onUpdate:modelValue": ($event) => this.curValue = $event
98
+ }, {
99
+ default: () => [createVNode(resolveComponent("van-cell-group"), {
100
+ "inset": true
101
+ }, _isSlot(_slot = this.items.map((item, index) => {
102
+ return createVNode(resolveComponent("van-cell"), {
103
+ "title": item.text,
104
+ "clickable": true,
105
+ "onClick": () => {
106
+ this.toggle(index);
107
+ }
108
+ }, {
109
+ "right-icon": () => {
110
+ return createVNode(resolveComponent("van-checkbox"), {
111
+ "ref": (el) => this.checkboxRefs[index] = el,
112
+ "name": item.value,
113
+ "onClick": (e) => e.stopPropagation()
114
+ }, null);
115
+ }
116
+ });
117
+ })) ? _slot : {
118
+ default: () => [_slot]
119
+ })]
120
+ });
121
+ };
122
+ return createVNode(resolveComponent("van-popup"), {
123
+ "class": this.ns.b(),
124
+ "show": this.showPicker,
125
+ "onUpdate:show": ($event) => this.showPicker = $event,
126
+ "round": true,
127
+ "position": "bottom",
128
+ "close-on-click-overlay": false,
129
+ "onClickOverlay": (e) => {
130
+ e.stopPropagation();
131
+ this.emit("update:showPicker", false);
132
+ }
133
+ }, {
134
+ default: () => [renderToolbar(), renderColumns()]
135
+ });
136
+ }
137
+ });
138
+
139
+ export { IBizDataMPicker };
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-mpicker{--van-tag-radius:3.125rem}.ibiz-mpicker .van-field{font-size:var(--ibiz-form-item-font-size)}.ibiz-mpicker .van-field__button button{color:var(--van-field-right-icon-color);border:none}.ibiz-mpicker .van-field__control--custom{flex-wrap:wrap}.ibiz-mpicker .van-field__control{gap:.5rem}.ibiz-mpicker .van-field__control .van-tag{height:100%;padding:.3125rem;--van-tag-font-size:var(--ibiz-form-item-font-size)}.ibiz-mpicker input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-mpicker--disabled{opacity:.8}.ibiz-mpicker--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}
1
+ @charset "UTF-8";.ibiz-mpicker{--van-tag-radius:3.125rem}.ibiz-mpicker .van-field{font-size:var(--ibiz-form-item-font-size)}.ibiz-mpicker .van-field::after{display:none}.ibiz-mpicker .van-field__right-icon button{color:var(--van-field-right-icon-color);border:none}.ibiz-mpicker .van-field__control--custom{flex-wrap:wrap}.ibiz-mpicker .van-field__control{gap:.5rem}.ibiz-mpicker .van-field__control .van-tag{height:100%;padding:.3125rem;--van-tag-font-size:var(--ibiz-form-item-font-size)}.ibiz-mpicker input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-mpicker--disabled{opacity:.8}.ibiz-mpicker--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}
@@ -26,11 +26,12 @@ export declare const IBizMPicker: import("vue").DefineComponent<{
26
26
  items: Ref<IData[]>;
27
27
  valueText: import("vue").ComputedRef<string>;
28
28
  selectItems: Ref<IData[]>;
29
- onSearch: (query: string) => Promise<void>;
29
+ showPicker: Ref<boolean>;
30
+ onSearch: (query?: string) => Promise<void>;
30
31
  onRemove: (tag: string) => void;
31
- onOpenChange: (flag: boolean) => void;
32
32
  onSelect: (selects: string[]) => void;
33
33
  openPickUpView: () => Promise<void>;
34
+ openPicker: () => Promise<void>;
34
35
  onFocus: () => void;
35
36
  onBlur: () => void;
36
37
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -61,8 +62,8 @@ export declare const IBizMPicker: import("vue").DefineComponent<{
61
62
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
62
63
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
63
64
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
64
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
65
65
  onInfoTextChange?: ((_text: string) => any) | undefined;
66
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
66
67
  }, {
67
68
  disabled: boolean;
68
69
  readonly: boolean;
@@ -1,6 +1,8 @@
1
1
  import { ref, watch, computed, resolveComponent, createVNode, defineComponent } from 'vue';
2
2
  import { getDataPickerProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './ibiz-mpicker.css';
4
+ import { IBizDataMPicker } from '../../common/data-mpicker/ibiz-data-mpicker.mjs';
5
+ import { IBizCommonRightIcon } from '../../common/right-icon/right-icon.mjs';
4
6
 
5
7
  "use strict";
6
8
  const IBizMPicker = /* @__PURE__ */ defineComponent({
@@ -15,20 +17,26 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
15
17
  const curValue = ref([]);
16
18
  const items = ref([]);
17
19
  const selectItems = ref([]);
18
- const open = ref(false);
20
+ const showPicker = ref(false);
21
+ const formatter = (item) => {
22
+ return {
23
+ srfkey: item[c.keyName] || item.srfkey,
24
+ value: item[c.keyName] || item.srfkey,
25
+ srfmajortext: item[c.textName] || item.srfmajortext,
26
+ text: item[c.textName] || item.srfmajortext,
27
+ ...item
28
+ };
29
+ };
19
30
  watch(() => props.value, (newVal) => {
20
31
  curValue.value = [];
21
32
  selectItems.value = [];
22
33
  if (newVal) {
23
- selectItems.value = JSON.parse(newVal);
34
+ selectItems.value = JSON.parse(newVal).map(formatter);
24
35
  selectItems.value.forEach((item) => {
25
36
  curValue.value.push(item.srfkey);
26
37
  const index = items.value.findIndex((i) => Object.is(i.srfkey, item.srfkey));
27
38
  if (index < 0) {
28
- items.value.push({
29
- srfkey: item.srfkey,
30
- srfmajortext: item.srfmajortext
31
- });
39
+ items.value.push(formatter(item));
32
40
  }
33
41
  });
34
42
  }
@@ -40,10 +48,7 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
40
48
  const valArr = [];
41
49
  if (result && Array.isArray(result)) {
42
50
  result.forEach((select) => {
43
- const formattedItem = {
44
- srfkey: select[c.keyName] || select.srfkey,
45
- srfmajortext: select[c.textName] || select.srfmajortext
46
- };
51
+ const formattedItem = formatter(select);
47
52
  valArr.push(formattedItem);
48
53
  const index = items.value.findIndex((item) => Object.is(item[c.keyName], select[c.keyName]));
49
54
  if (index < 0) {
@@ -70,27 +75,22 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
70
75
  selects.forEach((select) => {
71
76
  const findItem = items.value.find((item) => Object.is(item.srfkey, select));
72
77
  if (findItem) {
73
- valArr.push({
74
- srfkey: findItem.srfkey,
75
- srfmajortext: findItem.srfmajortext
76
- });
78
+ valArr.push(formatter(findItem));
77
79
  }
78
80
  });
79
81
  const value = valArr.length > 0 ? JSON.stringify(valArr) : "";
82
+ selectItems.value = valArr;
80
83
  emit("change", value);
81
84
  } else {
82
85
  emit("change", "");
83
86
  }
84
87
  };
85
- const onSearch = async (query) => {
88
+ const onSearch = async (query = "") => {
86
89
  if (c.model.appDataEntityId) {
87
90
  const trimQuery = query.trim();
88
91
  const res = await c.getServiceData(trimQuery, props.data);
89
92
  if (res) {
90
- items.value = res.data.map((item) => ({
91
- srfkey: item[c.keyName],
92
- srfmajortext: item[c.textName]
93
- }));
93
+ items.value = res.data.map((item) => formatter(item));
94
94
  }
95
95
  }
96
96
  };
@@ -125,13 +125,6 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
125
125
  emit("change", value);
126
126
  }
127
127
  };
128
- const onOpenChange = (flag) => {
129
- open.value = flag;
130
- if (open.value) {
131
- items.value = [];
132
- onSearch("");
133
- }
134
- };
135
128
  const valueText = computed(() => {
136
129
  return selectItems.value.map((item) => {
137
130
  return item.srfmajortext;
@@ -143,6 +136,10 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
143
136
  const onBlur = () => {
144
137
  emit("blur");
145
138
  };
139
+ const openPicker = async () => {
140
+ showPicker.value = true;
141
+ onSearch();
142
+ };
146
143
  return {
147
144
  ns,
148
145
  c,
@@ -150,11 +147,12 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
150
147
  items,
151
148
  valueText,
152
149
  selectItems,
150
+ showPicker,
153
151
  onSearch,
154
152
  onRemove,
155
- onOpenChange,
156
153
  onSelect,
157
154
  openPickUpView,
155
+ openPicker,
158
156
  onFocus,
159
157
  onBlur
160
158
  };
@@ -162,6 +160,9 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
162
160
  render() {
163
161
  return createVNode("div", {
164
162
  "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : "", this.readonly ? this.ns.m("readonly") : ""],
163
+ "onClick": () => {
164
+ this.openPicker();
165
+ },
165
166
  "ref": "editorRef"
166
167
  }, [this.readonly && this.valueText, !this.readonly && createVNode(resolveComponent("van-field"), {
167
168
  "ref": "editorRef",
@@ -184,23 +185,29 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
184
185
  });
185
186
  });
186
187
  },
187
- button: () => {
188
+ "right-icon": () => {
188
189
  if (this.$slots.append) {
189
190
  return this.$slots.append({});
190
191
  }
191
192
  if (this.disabled || this.readonly) {
192
193
  return null;
193
194
  }
194
- return [this.c.model.pickupAppViewId ? createVNode(resolveComponent("van-button"), {
195
+ return [this.c.model.pickupAppViewId && createVNode(resolveComponent("van-button"), {
195
196
  "size": "small",
196
197
  "onClick": this.openPickUpView
197
198
  }, {
198
199
  default: () => [createVNode("ion-icon", {
199
200
  "name": "search"
200
201
  }, null)]
201
- }) : null];
202
+ }), this.c.model.appDEDataSetId && createVNode(IBizCommonRightIcon, null, null)];
202
203
  }
203
- })]);
204
+ }), createVNode(IBizDataMPicker, {
205
+ "items": this.items,
206
+ "onChange": this.onSelect,
207
+ "showPicker": this.showPicker,
208
+ "onUpdate:showPicker": ($event) => this.showPicker = $event,
209
+ "value": this.curValue
210
+ }, null)]);
204
211
  }
205
212
  });
206
213
 
@@ -70,8 +70,8 @@ export declare const IBizPicker: import("vue").DefineComponent<{
70
70
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
71
71
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
72
72
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
73
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
74
73
  onInfoTextChange?: ((_text: string) => any) | undefined;
74
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
75
75
  }, {
76
76
  disabled: boolean;
77
77
  readonly: boolean;
@@ -74,8 +74,8 @@ export declare const IBizPickerSelectView: import("vue").DefineComponent<{
74
74
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
75
75
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
76
76
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
77
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
78
77
  onInfoTextChange?: ((_text: string) => any) | undefined;
78
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
79
79
  }, {
80
80
  disabled: boolean;
81
81
  readonly: boolean;
@@ -56,8 +56,8 @@ export declare const IBizDatePicker: import("vue").DefineComponent<{
56
56
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
57
57
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
58
58
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
59
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
60
59
  onInfoTextChange?: ((_text: string) => any) | undefined;
60
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
61
61
  }, {
62
62
  disabled: boolean;
63
63
  readonly: boolean;
@@ -1 +1 @@
1
- .ibiz-date-range-picker{display:flex;align-items:center;justify-content:center}.ibiz-date-range-picker input{width:100%;font-size:var(--ibiz-form-item-font-size);color:var(--ibiz-form-item-text-color);text-align:center;background-color:transparent;border:none;border-color:var(--ibiz-form-item-border-color);box-shadow:none}.ibiz-date-range-picker--disabled{--van-field-input-text-color:var(--ibiz-form-item-disabled-color)}.ibiz-date-range-picker--disabled input{color:var(--ibiz-form-item-disabled-color)}.ibiz-date-range-picker--readonly{--van-field-input-text-color:var(--ibiz-form-item-readonly-color)}.ibiz-date-range-picker--readonly input{color:var(--ibiz-form-item-readonly-color)}
1
+ .ibiz-date-range-picker{display:flex;align-items:center;justify-content:center}.ibiz-date-range-picker .van-field::after{display:none}.ibiz-date-range-picker input{width:100%;font-size:var(--ibiz-form-item-font-size);color:var(--ibiz-form-item-text-color);text-align:center;background-color:transparent;border:none;border-color:var(--ibiz-form-item-border-color);box-shadow:none}.ibiz-date-range-picker--disabled{--van-field-input-text-color:var(--ibiz-form-item-disabled-color)}.ibiz-date-range-picker--disabled input{color:var(--ibiz-form-item-disabled-color)}.ibiz-date-range-picker--readonly{--van-field-input-text-color:var(--ibiz-form-item-readonly-color)}.ibiz-date-range-picker--readonly input{color:var(--ibiz-form-item-readonly-color)}
@@ -62,8 +62,8 @@ export declare const IBizDateRangePicker: import("vue").DefineComponent<{
62
62
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
63
63
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
64
64
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
65
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
66
65
  onInfoTextChange?: ((_text: string) => any) | undefined;
66
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
67
67
  }, {
68
68
  disabled: boolean;
69
69
  readonly: boolean;
@@ -62,8 +62,8 @@ export declare const IBizDropdown: import("vue").DefineComponent<{
62
62
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
63
63
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
64
64
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
65
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
66
65
  onInfoTextChange?: ((_text: string) => any) | undefined;
66
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
67
67
  }, {
68
68
  disabled: boolean;
69
69
  readonly: boolean;
@@ -1 +1 @@
1
- .ibiz-dropdown-list{height:100%;--van-tag-radius:3.125rem}.ibiz-dropdown-list .van-field__control{gap:.5rem}.ibiz-dropdown-list .van-field__control .van-tag{height:100%;padding:.3125rem;--van-tag-font-size:var(--ibiz-form-item-font-size)}.ibiz-dropdown-list .van-picker .van-picker__mask{background-image:var(--ibiz-color-overlay-bg)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar button{padding:0;background-color:transparent;border:none}.ibiz-dropdown-list-toolbar__confirm{color:var(--ibiz-color-primary)}.ibiz-dropdown-list-toolbar__cancel{color:var(--ibiz-color-text-3)}.ibiz-dropdown-list .ibiz-dropdown-list-columns{min-height:30vh;max-height:50vh;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell-group{height:100%;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell{padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-dropdown-list--disabled{opacity:.8}.ibiz-dropdown-list--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}.ibiz-dropdown-list .van-cell-group--inset{margin:0}.ibiz-dropdown-list__select::after{display:none}
1
+ .ibiz-dropdown-list{height:100%;--van-tag-radius:3.125rem}.ibiz-dropdown-list .van-field__control{gap:.5rem}.ibiz-dropdown-list .van-field__control .van-tag{height:100%;padding:.3125rem;--van-tag-font-size:var(--ibiz-form-item-font-size)}.ibiz-dropdown-list .van-picker .van-picker__mask{background-image:var(--ibiz-color-overlay-bg)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar button{padding:0;background-color:transparent;border:none}.ibiz-dropdown-list-toolbar__confirm{color:var(--ibiz-color-primary)}.ibiz-dropdown-list-toolbar__cancel{color:var(--ibiz-color-text-3)}.ibiz-dropdown-list .ibiz-dropdown-list-columns{min-height:30vh;max-height:50vh;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell-group{height:100%;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell{padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-dropdown-list--disabled{opacity:.8}.ibiz-dropdown-list--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}.ibiz-dropdown-list .van-cell-group--inset{margin:0}.ibiz-dropdown-list__select::after{display:none}.ibiz-dropdown-list .van-cell__title,.ibiz-dropdown-list .van-cell__value{text-align:left}
@@ -23,17 +23,14 @@ export declare const IBizDropdownList: import("vue").DefineComponent<{
23
23
  ns: import("@ibiz-template/core").Namespace;
24
24
  c: DropDownListEditorController;
25
25
  items: Ref<readonly IData[]>;
26
- curValue: import("vue").WritableComputedRef<string[]>;
27
26
  showPicker: Ref<boolean>;
28
27
  valueText: import("vue").ComputedRef<string>;
29
28
  selectItems: Ref<IData[]>;
30
- checkboxRefs: Ref<IData>;
29
+ selectKeys: Ref<string[]>;
31
30
  onBlur: () => void;
32
- toggle: (index: number) => void;
33
31
  onFocus: () => void;
34
- onCancel: () => void;
35
32
  onRemove: (item: IData) => void;
36
- onConfirm: () => void;
33
+ onConfirm: (selects: string[]) => void;
37
34
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
38
35
  change: (_value: unknown, _name?: string | undefined) => boolean;
39
36
  blur: (_event?: IData | undefined) => boolean;
@@ -62,8 +59,8 @@ export declare const IBizDropdownList: import("vue").DefineComponent<{
62
59
  onFocus?: ((_event?: IData | undefined) => any) | undefined;
63
60
  onBlur?: ((_event?: IData | undefined) => any) | undefined;
64
61
  onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
65
- onEnter?: ((_event?: IData | undefined) => any) | undefined;
66
62
  onInfoTextChange?: ((_text: string) => any) | undefined;
63
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
67
64
  }, {
68
65
  disabled: boolean;
69
66
  readonly: boolean;