@ibiz-template/vue3-components 0.7.25 → 0.7.26-alpha.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 (49) hide show
  1. package/dist/index-WMgMgSGZ.js +4 -0
  2. package/dist/index.min.css +1 -1
  3. package/dist/index.system.min.js +1 -1
  4. package/dist/{xlsx-util-xgesm7QP.js → xlsx-util-W01Wk5pi.js} +1 -1
  5. package/es/control/dashboard/index.mjs +4 -1
  6. package/es/control/dashboard/portlet/index.d.ts +1 -0
  7. package/es/control/dashboard/portlet/index.mjs +2 -0
  8. package/es/control/dashboard/portlet/report-portlet/index.d.ts +24 -0
  9. package/es/control/dashboard/portlet/report-portlet/index.mjs +12 -0
  10. package/es/control/dashboard/portlet/report-portlet/report-portlet.d.ts +24 -0
  11. package/es/control/dashboard/portlet/report-portlet/report-portlet.mjs +64 -0
  12. package/es/control/dashboard/portlet/report-portlet/report-portlet.provider.d.ts +15 -0
  13. package/es/control/dashboard/portlet/report-portlet/report-portlet.provider.mjs +21 -0
  14. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs +25 -0
  15. package/es/control/form/form-detail/form-mdctrl/index.mjs +2 -0
  16. package/es/control/form/form-detail/form-mdctrl/mdctrl-container2/icon/index.d.ts +21 -0
  17. package/es/control/form/form-detail/form-mdctrl/mdctrl-container2/icon/index.mjs +75 -0
  18. package/es/control/form/form-detail/form-mdctrl/mdctrl-container2/mdctrl-container2.css +1 -0
  19. package/es/control/form/form-detail/form-mdctrl/mdctrl-container2/mdctrl-container2.d.ts +38 -0
  20. package/es/control/form/form-detail/form-mdctrl/mdctrl-container2/mdctrl-container2.mjs +205 -0
  21. package/es/control/index.mjs +2 -0
  22. package/es/control/report-panel/report-detail/bi-report-panel/bi-report-panel.mjs +7 -1
  23. package/es/editor/data-picker/ibiz-picker-link/ibiz-picker-link.mjs +33 -1
  24. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.css +1 -1
  25. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +50 -32
  26. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.d.ts +2 -0
  27. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +59 -5
  28. package/es/index.mjs +2 -0
  29. package/es/view-engine/edit-view.engine.mjs +1 -1
  30. package/lib/control/dashboard/index.cjs +5 -0
  31. package/lib/control/dashboard/portlet/index.cjs +4 -0
  32. package/lib/control/dashboard/portlet/report-portlet/index.cjs +18 -0
  33. package/lib/control/dashboard/portlet/report-portlet/report-portlet.cjs +66 -0
  34. package/lib/control/dashboard/portlet/report-portlet/report-portlet.provider.cjs +23 -0
  35. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.cjs +25 -0
  36. package/lib/control/form/form-detail/form-mdctrl/index.cjs +2 -0
  37. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container2/icon/index.cjs +81 -0
  38. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container2/mdctrl-container2.cjs +207 -0
  39. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container2/mdctrl-container2.css +1 -0
  40. package/lib/control/index.cjs +22 -18
  41. package/lib/control/report-panel/report-detail/bi-report-panel/bi-report-panel.cjs +7 -1
  42. package/lib/editor/data-picker/ibiz-picker-link/ibiz-picker-link.cjs +32 -0
  43. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +49 -31
  44. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.css +1 -1
  45. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +59 -5
  46. package/lib/index.cjs +52 -48
  47. package/lib/view-engine/edit-view.engine.cjs +1 -1
  48. package/package.json +5 -5
  49. package/dist/index-Kg6lkzg1.js +0 -4
@@ -0,0 +1,81 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+
5
+ "use strict";
6
+ const dragIcon = () => vue.createVNode("svg", {
7
+ "viewBox": "0 0 16 16",
8
+ "xmlns": "http://www.w3.org/2000/svg",
9
+ "height": "1em",
10
+ "width": "1em",
11
+ "preserveAspectRatio": "xMidYMid meet",
12
+ "focusable": "false"
13
+ }, [vue.createVNode("g", {
14
+ "stroke-width": "1",
15
+ "fill-rule": "evenodd"
16
+ }, [vue.createVNode("g", {
17
+ "transform": "translate(5 1)",
18
+ "fill-rule": "nonzero"
19
+ }, [vue.createVNode("path", {
20
+ "d": "M1 2a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm4 0a1 1 0 1 1 0-2 1 1 0 0 1 0 2zM1 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm4 0a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm-4 4a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm4 0a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm-4 4a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm4 0a1 1 0 1 1 0-2 1 1 0 0 1 0 2z"
21
+ }, null)])])]);
22
+ const removeIcon = () => vue.createVNode("svg", {
23
+ "viewBox": "0 0 16 16",
24
+ "xmlns": "http://www.w3.org/2000/svg",
25
+ "height": "1em",
26
+ "width": "1em",
27
+ "preserveAspectRatio": "xMidYMid meet",
28
+ "focusable": "false"
29
+ }, [vue.createVNode("g", {
30
+ "stroke-width": "1",
31
+ "fill-rule": "evenodd"
32
+ }, [vue.createVNode("path", {
33
+ "d": "M4.002 3.403V1a1 1 0 0 1 1-1h6.003a1 1 0 0 1 1 1v2.403h3.396a.6.6 0 1 1 0 1.2h-1.395V15a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V4.603H.6a.6.6 0 1 1 0-1.2h3.4zm8.804 1.205H3.2V14.8h9.605V4.608zM5.202 1.2v2.155h5.603V1.2H5.202zm.6 6.417a.6.6 0 0 1 1.201 0v4.758a.6.6 0 0 1-1.2 0V7.617zm3.202 0a.6.6 0 0 1 1.2 0v4.758a.6.6 0 0 1-1.2 0V7.617z"
34
+ }, null)])]);
35
+ const addIcon = () => vue.createVNode("svg", {
36
+ "viewBox": "0 0 16 16",
37
+ "xmlns": "http://www.w3.org/2000/svg",
38
+ "height": "1em",
39
+ "width": "1em",
40
+ "preserveAspectRatio": "xMidYMid meet",
41
+ "focusable": "false"
42
+ }, [vue.createVNode("g", {
43
+ "stroke-width": "1",
44
+ "fill-rule": "evenodd"
45
+ }, [vue.createVNode("path", {
46
+ "d": "M8.578 7.383V1.602a.601.601 0 1 0-1.2 0v5.781H1.6a.601.601 0 0 0 0 1.203h5.777v5.812a.601.601 0 1 0 1.2 0V8.586H14.4a.601.601 0 0 0 0-1.203H8.578z"
47
+ }, null)])]);
48
+ const leftArrowIcon = () => vue.createVNode("svg", {
49
+ "viewBox": "0 0 16 16",
50
+ "xmlns": "http://www.w3.org/2000/svg",
51
+ "height": "1em",
52
+ "width": "1em",
53
+ "preserveAspectRatio": "xMidYMid meet",
54
+ "focusable": "false"
55
+ }, [vue.createVNode("g", {
56
+ "stroke-width": "1",
57
+ "fill-rule": "evenodd"
58
+ }, [vue.createVNode("path", {
59
+ "d": "M7.028 10.976l5.951-5.952a.6.6 0 0 1 1.024.425V11.4a.6.6 0 0 1-.6.6H7.452a.6.6 0 0 1-.424-1.024z",
60
+ "transform": "scale(-1 1) rotate(-45 0 32.15)"
61
+ }, null)])]);
62
+ const rightArrowIcon = () => vue.createVNode("svg", {
63
+ "viewBox": "0 0 16 16",
64
+ "xmlns": "http://www.w3.org/2000/svg",
65
+ "height": "1em",
66
+ "width": "1em",
67
+ "preserveAspectRatio": "xMidYMid meet",
68
+ "focusable": "false"
69
+ }, [vue.createVNode("g", {
70
+ "stroke-width": "1",
71
+ "fill-rule": "evenodd"
72
+ }, [vue.createVNode("path", {
73
+ "d": "M3.028 10.976l5.951-5.952a.6.6 0 0 1 1.024.425V11.4a.6.6 0 0 1-.6.6H3.452a.6.6 0 0 1-.424-1.024z",
74
+ "transform": "rotate(-45 6.003 8)"
75
+ }, null)])]);
76
+
77
+ exports.addIcon = addIcon;
78
+ exports.dragIcon = dragIcon;
79
+ exports.leftArrowIcon = leftArrowIcon;
80
+ exports.removeIcon = removeIcon;
81
+ exports.rightArrowIcon = rightArrowIcon;
@@ -0,0 +1,207 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var runtime = require('@ibiz-template/runtime');
5
+ var vue3Util = require('@ibiz-template/vue3-util');
6
+ var draggable = require('vuedraggable');
7
+ require('./mdctrl-container2.css');
8
+ var index = require('./icon/index.cjs');
9
+
10
+ "use strict";
11
+ const MDCtrlContainer2 = /* @__PURE__ */ vue.defineComponent({
12
+ name: "IBizMDCtrlContainer2",
13
+ components: {
14
+ draggable
15
+ },
16
+ props: {
17
+ controller: {
18
+ type: runtime.FormMDCtrlFormController,
19
+ required: true
20
+ },
21
+ items: {
22
+ type: Array,
23
+ default: () => []
24
+ }
25
+ },
26
+ setup(props) {
27
+ const ns = vue3Util.useNamespace("mdctrl-container2");
28
+ const currentItem = vue.ref("");
29
+ vue.watch(() => props.items, () => {
30
+ var _a;
31
+ if (!currentItem.value) {
32
+ currentItem.value = ((_a = props.items[0]) == null ? void 0 : _a.id) || "";
33
+ }
34
+ }, {
35
+ immediate: true
36
+ });
37
+ const draggingKey = vue.ref("");
38
+ const container = vue.ref();
39
+ const isShowLeftArrow = vue.ref(false);
40
+ const isShowRightArrow = vue.ref(false);
41
+ const isShowBorder = vue.ref(true);
42
+ let resizeObserver;
43
+ const updateArrowVisible = () => {
44
+ if (container.value) {
45
+ const el = container.value.$el;
46
+ if (el) {
47
+ isShowLeftArrow.value = el.scrollLeft > 0;
48
+ isShowRightArrow.value = el.scrollLeft < el.scrollWidth - el.offsetWidth;
49
+ isShowBorder.value = el.offsetWidth > el.scrollWidth;
50
+ }
51
+ }
52
+ };
53
+ vue.onMounted(() => {
54
+ if (container.value && container.value.$el) {
55
+ resizeObserver = new ResizeObserver((entries) => {
56
+ entries.forEach(() => {
57
+ updateArrowVisible();
58
+ });
59
+ });
60
+ resizeObserver.observe(container.value.$el);
61
+ }
62
+ });
63
+ vue.onUnmounted(() => {
64
+ if (resizeObserver) {
65
+ resizeObserver.disconnect();
66
+ }
67
+ });
68
+ const handleSelect = (e, item) => {
69
+ e.stopPropagation();
70
+ currentItem.value = item.id;
71
+ };
72
+ const handleAdd = (e) => {
73
+ var _a;
74
+ e.stopPropagation();
75
+ props.controller.create();
76
+ currentItem.value = ((_a = props.items[props.items.length - 1]) == null ? void 0 : _a.id) || "";
77
+ };
78
+ const handleRemove = async (e, item) => {
79
+ var _a;
80
+ e.stopPropagation();
81
+ await props.controller.remove(item.id);
82
+ if (currentItem.value === item.id) {
83
+ currentItem.value = ((_a = props.items[0]) == null ? void 0 : _a.id) || "";
84
+ }
85
+ updateArrowVisible();
86
+ };
87
+ const handleArrowClick = (e, direction) => {
88
+ e.stopPropagation();
89
+ if (container.value) {
90
+ const el = container.value.$el;
91
+ if (el) {
92
+ const children = Array.from(el.children || []);
93
+ const child = children.find((item) => item.classList.contains(ns.b("header-item")));
94
+ if (child) {
95
+ const width = child.offsetWidth;
96
+ if (direction === "right") {
97
+ el.scrollLeft += width;
98
+ }
99
+ if (direction === "left") {
100
+ el.scrollLeft -= width;
101
+ }
102
+ }
103
+ updateArrowVisible();
104
+ }
105
+ }
106
+ };
107
+ const handleDragStart = (item) => {
108
+ draggingKey.value = item.id;
109
+ };
110
+ const handleDragEnd = () => {
111
+ draggingKey.value = "";
112
+ updateArrowVisible();
113
+ };
114
+ return {
115
+ ns,
116
+ currentItem,
117
+ draggingKey,
118
+ container,
119
+ isShowLeftArrow,
120
+ isShowRightArrow,
121
+ isShowBorder,
122
+ handleSelect,
123
+ handleAdd,
124
+ handleRemove,
125
+ handleArrowClick,
126
+ handleDragStart,
127
+ handleDragEnd
128
+ };
129
+ },
130
+ render() {
131
+ return vue.createVNode("div", {
132
+ "class": this.ns.b()
133
+ }, [vue.createVNode("div", {
134
+ "class": [this.ns.b("header")]
135
+ }, [vue.createVNode(draggable, {
136
+ "ref": "container",
137
+ "class": [this.ns.b("header-content")],
138
+ "list": this.items,
139
+ "ghostClass": this.ns.bm("header-item", "ghost"),
140
+ "itemKey": "id"
141
+ }, {
142
+ item: ({
143
+ element
144
+ }) => {
145
+ return vue.createVNode("div", {
146
+ "class": [this.ns.b("header-item"), this.draggingKey && this.ns.bm("header-item", "dragging"), this.draggingKey === element.id && this.ns.bm("header-item", "drag"), this.currentItem === element.id && this.ns.bm("header-item", "active")],
147
+ "onDragstart": () => {
148
+ this.handleDragStart(element);
149
+ },
150
+ "onDragend": () => {
151
+ this.handleDragEnd();
152
+ },
153
+ "onClick": (e) => {
154
+ this.handleSelect(e, element);
155
+ }
156
+ }, [vue.createVNode("div", {
157
+ "class": this.ns.be("header-item", "drag-icon")
158
+ }, [index.dragIcon()]), vue.createVNode("div", {
159
+ "class": this.ns.be("header-item", "text")
160
+ }, [element.title]), this.controller.enableDelete && vue.createVNode("div", {
161
+ "class": this.ns.be("header-item", "btn"),
162
+ "title": ibiz.i18n.t("app.delete"),
163
+ "onClick": (e) => {
164
+ this.handleRemove(e, element);
165
+ }
166
+ }, [index.removeIcon()])]);
167
+ },
168
+ footer: () => {
169
+ return [this.controller.enableCreate && vue.createVNode("div", {
170
+ "class": [this.ns.b("header-item"), !this.isShowBorder && this.ns.bm("header-item", "hidden-border")],
171
+ "onClick": (e) => {
172
+ this.handleAdd(e);
173
+ }
174
+ }, [vue.createVNode("div", {
175
+ "class": this.ns.be("header-item", "icon")
176
+ }, [index.addIcon()]), vue.createVNode("div", {
177
+ "class": this.ns.be("header-item", "text")
178
+ }, [ibiz.i18n.t("app.add")])]), this.isShowLeftArrow && vue.createVNode("div", {
179
+ "class": this.ns.b("header-left-arrow"),
180
+ "onClick": (e) => {
181
+ this.handleArrowClick(e, "left");
182
+ }
183
+ }, [index.leftArrowIcon()]), this.isShowRightArrow && vue.createVNode("div", {
184
+ "class": this.ns.b("header-right-arrow"),
185
+ "onClick": (e) => {
186
+ this.handleArrowClick(e, "right");
187
+ }
188
+ }, [index.rightArrowIcon()])];
189
+ }
190
+ })]), vue.createVNode("div", {
191
+ "class": this.ns.b("content")
192
+ }, [this.items.map((item) => {
193
+ var _a, _b;
194
+ return vue.createVNode("div", {
195
+ "key": item.id,
196
+ "class": this.ns.b("content-item"),
197
+ "style": {
198
+ display: item.id !== this.currentItem ? "none" : ""
199
+ }
200
+ }, [(_b = (_a = this.$slots).item) == null ? void 0 : _b.call(_a, {
201
+ data: item
202
+ })]);
203
+ })])]);
204
+ }
205
+ });
206
+
207
+ exports.MDCtrlContainer2 = MDCtrlContainer2;
@@ -0,0 +1 @@
1
+ .ibiz-mdctrl-container2-header{position:relative;display:flex;overflow:hidden}.ibiz-mdctrl-container2-header-content{display:flex;flex:1;height:var(--ibiz-height-control-large);overflow:auto hidden;background:var(--ibiz-color-bg-0);border:1px solid var(--ibiz-color-border);scrollbar-width:none;-ms-overflow-style:none}.ibiz-mdctrl-container2-header-content::-webkit-scrollbar{display:none;width:0;height:0}.ibiz-mdctrl-container2-header-left-arrow{position:absolute;top:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;width:var(--ibiz-spacing-base-loose);cursor:pointer;background:var(--ibiz-color-disabled-border)}.ibiz-mdctrl-container2-header-left-arrow>svg{fill:var(--ibiz-color-text-3)}.ibiz-mdctrl-container2-header-right-arrow{position:absolute;top:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;width:var(--ibiz-spacing-base-loose);cursor:pointer;background:var(--ibiz-color-disabled-border)}.ibiz-mdctrl-container2-header-right-arrow>svg{fill:var(--ibiz-color-text-3)}.ibiz-mdctrl-container2-header-item{position:relative;display:flex;flex:0 0 auto;align-items:center;justify-content:center;width:calc((100% - var(--ibiz-height-control-large))/ 5);height:var(--ibiz-height-control-large);padding:0 var(--ibiz-spacing-base-loose);line-height:var(--ibiz-height-control-large);text-align:center;cursor:pointer;border-right:1px solid var(--ibiz-color-border)}.ibiz-mdctrl-container2-header-item__drag-icon{position:absolute;left:0;display:none}.ibiz-mdctrl-container2-header-item__drag-icon>svg{fill:var(--ibiz-color-text-3)}.ibiz-mdctrl-container2-header-item__icon{display:flex;flex:0 0 auto;align-items:center;justify-content:center;margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-mdctrl-container2-header-item__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-mdctrl-container2-header-item__btn{position:absolute;top:0;right:var(--ibiz-spacing-extra-tight);display:none}.ibiz-mdctrl-container2-header-item__btn>svg{fill:var(--ibiz-color-text-3)}.ibiz-mdctrl-container2-header-item__btn:hover>svg{fill:var(--ibiz-color-danger)}.ibiz-mdctrl-container2-header-item--hidden-border{border-right:none}.ibiz-mdctrl-container2-header-item--active{background:var(--ibiz-color-bg-1)}.ibiz-mdctrl-container2-header-item--drag{background:var(--ibiz-color-bg-1);border:1px solid var(--ibiz-color-border)}.ibiz-mdctrl-container2-header-item--ghost{background:var(--ibiz-color-border);border:none}.ibiz-mdctrl-container2-header-item--ghost .ibiz-mdctrl-container2-header-item__text{opacity:0}.ibiz-mdctrl-container2-header-item:hover:not(.ibiz-mdctrl-container2-header-item--dragging):not(.ibiz-mdctrl-container2-header-item--drag):not(.ibiz-mdctrl-container2-header-item--ghost){background:var(--ibiz-color-bg-1)}.ibiz-mdctrl-container2-header-item:hover:not(.ibiz-mdctrl-container2-header-item--dragging):not(.ibiz-mdctrl-container2-header-item--drag):not(.ibiz-mdctrl-container2-header-item--ghost) .ibiz-mdctrl-container2-header-item__btn,.ibiz-mdctrl-container2-header-item:hover:not(.ibiz-mdctrl-container2-header-item--dragging):not(.ibiz-mdctrl-container2-header-item--drag):not(.ibiz-mdctrl-container2-header-item--ghost) .ibiz-mdctrl-container2-header-item__drag-icon{display:block}
@@ -18,15 +18,15 @@ var index$y = require('./wizard-panel/index.cjs');
18
18
  var index$z = require('./drbar/index.cjs');
19
19
  var index$A = require('./drtab/index.cjs');
20
20
  var index$B = require('./dashboard/index.cjs');
21
- var index$K = require('./calendar/index.cjs');
22
- var index$L = require('./kanban/index.cjs');
23
- var index$M = require('./tree-grid-ex/index.cjs');
24
- var index$N = require('./tree-grid/index.cjs');
25
- var index$O = require('./medit-view-panel/index.cjs');
26
- var index$P = require('./map/index.cjs');
27
- var index$Q = require('./report-panel/index.cjs');
28
- var index$R = require('./gantt/index.cjs');
29
- var index$S = require('./context-menu/index.cjs');
21
+ var index$L = require('./calendar/index.cjs');
22
+ var index$M = require('./kanban/index.cjs');
23
+ var index$N = require('./tree-grid-ex/index.cjs');
24
+ var index$O = require('./tree-grid/index.cjs');
25
+ var index$P = require('./medit-view-panel/index.cjs');
26
+ var index$Q = require('./map/index.cjs');
27
+ var index$R = require('./report-panel/index.cjs');
28
+ var index$S = require('./gantt/index.cjs');
29
+ var index$T = require('./context-menu/index.cjs');
30
30
  var gridControl_util = require('./grid/grid/grid-control.util.cjs');
31
31
  var index$2 = require('./grid/grid/index.cjs');
32
32
  var index$3 = require('./grid/grid-column/grid-field-column/index.cjs');
@@ -73,6 +73,8 @@ var htmlPortlet = require('./dashboard/portlet/html-portlet/html-portlet.cjs');
73
73
  var index$I = require('./dashboard/portlet/html-portlet/index.cjs');
74
74
  var actionbarPortlet = require('./dashboard/portlet/actionbar-portlet/actionbar-portlet.cjs');
75
75
  var index$J = require('./dashboard/portlet/actionbar-portlet/index.cjs');
76
+ var reportPortlet = require('./dashboard/portlet/report-portlet/report-portlet.cjs');
77
+ var index$K = require('./dashboard/portlet/report-portlet/index.cjs');
76
78
 
77
79
  "use strict";
78
80
 
@@ -91,15 +93,15 @@ exports.IBizWizardPanelControl = index$y.IBizWizardPanelControl;
91
93
  exports.IBizDRBarControl = index$z.IBizDRBarControl;
92
94
  exports.IBizDRTabControl = index$A.IBizDRTabControl;
93
95
  exports.IBizDashboardControl = index$B.IBizDashboardControl;
94
- exports.IBizCalendarControl = index$K.IBizCalendarControl;
95
- exports.IBizKanbanControl = index$L.IBizKanbanControl;
96
- exports.IBizTreeGridExControl = index$M.IBizTreeGridExControl;
97
- exports.IBizTreeGridControl = index$N.IBizTreeGridControl;
98
- exports.IBizMEditViewPanelControl = index$O.IBizMEditViewPanelControl;
99
- exports.IBizMapControl = index$P.IBizMapControl;
100
- exports.IBizReportPanelControl = index$Q.IBizReportPanelControl;
101
- exports.IBizGanttControl = index$R.IBizGanttControl;
102
- exports.IBizContextMenuControl = index$S.IBizContextMenuControl;
96
+ exports.IBizCalendarControl = index$L.IBizCalendarControl;
97
+ exports.IBizKanbanControl = index$M.IBizKanbanControl;
98
+ exports.IBizTreeGridExControl = index$N.IBizTreeGridExControl;
99
+ exports.IBizTreeGridControl = index$O.IBizTreeGridControl;
100
+ exports.IBizMEditViewPanelControl = index$P.IBizMEditViewPanelControl;
101
+ exports.IBizMapControl = index$Q.IBizMapControl;
102
+ exports.IBizReportPanelControl = index$R.IBizReportPanelControl;
103
+ exports.IBizGanttControl = index$S.IBizGanttControl;
104
+ exports.IBizContextMenuControl = index$T.IBizContextMenuControl;
103
105
  exports.useAppGridBase = gridControl_util.useAppGridBase;
104
106
  exports.useAppGridPagination = gridControl_util.useAppGridPagination;
105
107
  exports.useGridDraggable = gridControl_util.useGridDraggable;
@@ -150,3 +152,5 @@ exports.HtmlPortlet = htmlPortlet.HtmlPortlet;
150
152
  exports.IBizHtmlPortlet = index$I.IBizHtmlPortlet;
151
153
  exports.ActionBarPortlet = actionbarPortlet.ActionBarPortlet;
152
154
  exports.IBizActionBarPortlet = index$J.IBizActionBarPortlet;
155
+ exports.ReportPortlet = reportPortlet.ReportPortlet;
156
+ exports.IBizReportPortlet = index$K.IBizReportPortlet;
@@ -32,7 +32,13 @@ const BIReportPanel = /* @__PURE__ */ vue.defineComponent({
32
32
  "mode": "CONTENT",
33
33
  "context": this.c.context,
34
34
  "viewParams": this.c.params,
35
- "config": this.generator && this.generator.config
35
+ "config": this.generator && this.generator.config,
36
+ "onInit": (args) => {
37
+ this.generator && this.generator.init(args);
38
+ },
39
+ "onReportChartChange": (args) => {
40
+ this.generator && this.generator.init(args);
41
+ }
36
42
  }, null)]);
37
43
  }
38
44
  });
@@ -3,6 +3,7 @@
3
3
  var vue = require('vue');
4
4
  var vue3Util = require('@ibiz-template/vue3-util');
5
5
  require('./ibiz-picker-link.css');
6
+ var ramda = require('ramda');
6
7
 
7
8
  "use strict";
8
9
  const IBizPickerLink = /* @__PURE__ */ vue.defineComponent({
@@ -15,10 +16,23 @@ const IBizPickerLink = /* @__PURE__ */ vue.defineComponent({
15
16
  const ns = vue3Util.useNamespace("picker-link");
16
17
  const c = props.controller;
17
18
  const curValue = vue.ref("");
19
+ const items = vue.ref([]);
18
20
  const {
19
21
  useInFocusAndBlur,
20
22
  useInValueChange
21
23
  } = vue3Util.useAutoFocusBlur(props, emit);
24
+ const onSearch = async (query) => {
25
+ if (c.model.appDataEntityId) {
26
+ let trimQuery = "";
27
+ if (query !== props.value) {
28
+ trimQuery = query.trim();
29
+ }
30
+ const res = await c.getServiceData(trimQuery, props.data);
31
+ if (res) {
32
+ items.value = res.data;
33
+ }
34
+ }
35
+ };
22
36
  const showFormDefaultContent = vue.computed(() => {
23
37
  if (props.controlParams && props.controlParams.editmode === "hover" && !props.readonly) {
24
38
  return true;
@@ -36,6 +50,24 @@ const IBizPickerLink = /* @__PURE__ */ vue.defineComponent({
36
50
  }, {
37
51
  immediate: true
38
52
  });
53
+ vue.onMounted(() => {
54
+ vue.watch(() => props.data[c.valueItem], async (newVal, oldVal) => {
55
+ if (newVal !== oldVal) {
56
+ if (ramda.isNil(props.value)) {
57
+ await onSearch("");
58
+ }
59
+ const curItem = items.value.find((item) => Object.is(item[c.keyName], newVal));
60
+ if (curItem) {
61
+ curValue.value = curItem[c.textName];
62
+ }
63
+ if (newVal === null) {
64
+ emit("change", null);
65
+ }
66
+ }
67
+ }, {
68
+ immediate: true
69
+ });
70
+ });
39
71
  const handleOpenViewClose = (data) => {
40
72
  const item = {};
41
73
  Object.assign(item, data);
@@ -5,9 +5,6 @@ var vue3Util = require('@ibiz-template/vue3-util');
5
5
  require('./ibiz-dropdown.css');
6
6
 
7
7
  "use strict";
8
- function _isSlot(s) {
9
- return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
10
- }
11
8
  const IBizDropdown = /* @__PURE__ */ vue.defineComponent({
12
9
  name: "IBizDropdown",
13
10
  props: vue3Util.getDropdownProps(),
@@ -248,7 +245,6 @@ const IBizDropdown = /* @__PURE__ */ vue.defineComponent({
248
245
  };
249
246
  },
250
247
  render() {
251
- let _slot;
252
248
  const overflowMode = this.c.editorParams.overflowMode || ibiz.config.pickerEditor.overflowMode;
253
249
  const isEllipsis = overflowMode === "ellipsis";
254
250
  const editContent = this.hasChildren ? vue.createVNode(vue.resolveComponent("el-tree-select"), vue.mergeProps({
@@ -296,44 +292,66 @@ const IBizDropdown = /* @__PURE__ */ vue.defineComponent({
296
292
  "disabled": this.disabled,
297
293
  "loading": this.isLoading,
298
294
  "fit-input-width": isEllipsis,
295
+ "popper-class": "".concat(this.ns.b("popper"), " ").concat(this.c.editorParams.type === "round" ? this.ns.bm("popper", "round") : ""),
299
296
  "onBlur": this.onBlur,
300
297
  "onFocus": this.onFocus,
301
298
  "onKeyup": this.handleKeyUp,
302
299
  "onVisibleChange": this.onVisibleChange
303
- }, this.$attrs), _isSlot(_slot = this.items.map((item) => {
304
- return vue.createVNode(vue.resolveComponent("el-option"), {
305
- "key": item.value,
306
- "value": item.value.toString(),
307
- "label": item.text,
308
- "disabled": item.disableSelect === true,
309
- "style": item.bkcolor ? this.ns.cssVarBlock({
310
- "select-option-item-bkcolor": "".concat(item.bkcolor)
311
- }) : "",
312
- "class": [item.cls ? item.cls : null],
313
- "title": isEllipsis ? item.text : ""
314
- }, {
315
- default: () => {
300
+ }, this.$attrs), {
301
+ default: () => {
302
+ return this.items.map((item) => {
303
+ return vue.createVNode(vue.resolveComponent("el-option"), {
304
+ "key": item.value,
305
+ "value": item.value.toString(),
306
+ "label": item.text,
307
+ "disabled": item.disableSelect === true,
308
+ "style": item.bkcolor ? this.ns.cssVarBlock({
309
+ "select-option-item-bkcolor": "".concat(item.bkcolor)
310
+ }) : "",
311
+ "class": [item.cls ? item.cls : null],
312
+ "title": isEllipsis ? item.text : ""
313
+ }, {
314
+ default: () => {
315
+ return vue.createVNode("div", {
316
+ "class": [this.ns.b("select-option-content"), item.textCls ? item.textCls : null],
317
+ "style": item.color ? this.ns.cssVarBlock({
318
+ "select-option-item-color": "".concat(item.color)
319
+ }) : ""
320
+ }, [item.sysImage && vue.createVNode(vue.resolveComponent("iBizIcon"), {
321
+ "icon": item.sysImage
322
+ }, null), vue.createVNode("span", {
323
+ "class": [isEllipsis && this.ns.be("select-option-content", "text")]
324
+ }, [item.text])]);
325
+ }
326
+ });
327
+ });
328
+ },
329
+ prefix: () => {
330
+ if (this.c.editorParams.type !== "round") {
331
+ return;
332
+ }
333
+ return this.valueText.split(",").map((text) => {
334
+ const codeListItem = this.getCodeListItem(text);
316
335
  return vue.createVNode("div", {
317
- "class": [this.ns.b("select-option-content"), item.textCls ? item.textCls : null],
318
- "style": item.color ? this.ns.cssVarBlock({
319
- "select-option-item-color": "".concat(item.color)
336
+ "class": [this.ns.b("select-option-text"), codeListItem == null ? void 0 : codeListItem.textCls],
337
+ "style": (codeListItem == null ? void 0 : codeListItem.color) || (codeListItem == null ? void 0 : codeListItem.bkcolor) ? this.ns.cssVarBlock({
338
+ "select-option-item-color": "".concat(codeListItem.color || ""),
339
+ "select-option-item-bkcolor": "".concat(codeListItem.bkcolor || "")
320
340
  }) : ""
321
- }, [item.sysImage && vue.createVNode(vue.resolveComponent("iBizIcon"), {
322
- "icon": item.sysImage
323
- }, null), vue.createVNode("span", {
324
- "class": [isEllipsis && this.ns.be("select-option-content", "text")]
325
- }, [item.text])]);
326
- }
327
- });
328
- })) ? _slot : {
329
- default: () => [_slot]
341
+ }, [(codeListItem == null ? void 0 : codeListItem.sysImage) && vue.createVNode(vue.resolveComponent("iBizIcon"), {
342
+ "icon": codeListItem == null ? void 0 : codeListItem.sysImage
343
+ }, null), text || ""]);
344
+ });
345
+ }
330
346
  });
331
347
  const readonlyContent = this.valueText.split(",").map((text) => {
332
348
  const codeListItem = this.getCodeListItem(text);
333
349
  return vue.createVNode("span", {
334
350
  "class": [this.ns.b("readonly-text-item"), codeListItem == null ? void 0 : codeListItem.textCls],
335
351
  "style": (codeListItem == null ? void 0 : codeListItem.color) ? this.ns.cssVarBlock({
336
- "readonly-text-item-color": "".concat(codeListItem.color)
352
+ "readonly-text-item-color": "".concat(codeListItem.color || ""),
353
+ "select-option-item-color": "".concat(codeListItem.color || ""),
354
+ "select-option-item-bkcolor": "".concat((this.c.editorParams.type === "round" ? codeListItem.bkcolor : "") || "")
337
355
  }) : ""
338
356
  }, [(codeListItem == null ? void 0 : codeListItem.sysImage) && vue.createVNode(vue.resolveComponent("iBizIcon"), {
339
357
  "icon": codeListItem == null ? void 0 : codeListItem.sysImage
@@ -347,7 +365,7 @@ const IBizDropdown = /* @__PURE__ */ vue.defineComponent({
347
365
  }, [text]);
348
366
  }) : "-"]);
349
367
  return vue.createVNode("div", {
350
- "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : "", this.readonly ? this.ns.m("readonly") : "", this.ns.is("editable", this.isEditable), this.ns.is("show-default", this.showFormDefaultContent)],
368
+ "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : "", this.readonly ? this.ns.m("readonly") : "", this.ns.is("editable", this.isEditable), this.ns.is("show-default", this.showFormDefaultContent), this.c.editorParams.type === "round" && this.ns.m("round")],
351
369
  "style": this.cssVars
352
370
  }, [this.showFormDefaultContent && formDefaultContent, this.readonly ? readonlyContent : editContent]);
353
371
  }
@@ -1 +1 @@
1
- .ibiz-dropdown{width:var(--ibiz-dropdown-width);--ibiz-dropdown-width:100%;--ibiz-dropdown-readonly-text-item-color:var(--ibiz-form-item-text-color)}.ibiz-dropdown__branch-node>.el-tree-node__content{--ibiz-color-disabled-text:var(--ibiz-color-text-0)}.ibiz-dropdown .el-select{width:100%}.ibiz-dropdown-readonly-text-item{margin-right:var(--ibiz-spacing-tight);font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-dropdown-readonly-text-item-color)}.ibiz-dropdown-readonly-text-item .ibiz-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-width-icon-medium);height:var(--ibiz-width-icon-medium);margin-right:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-regular)}.el-select-dropdown__item{width:100%;background-color:var(--ibiz-dropdown-select-option-item-bkcolor)}.ibiz-dropdown-select-option-content{display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%;color:var(--ibiz-dropdown-select-option-item-color)}.ibiz-dropdown-select-option-content__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-dropdown-select-option-content .ibiz-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-width-icon-medium);height:var(--ibiz-width-icon-medium);margin-right:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-regular)}.ibiz-dropdown-form-default-content{display:none}.ibiz-form-item .ibiz-dropdown.is-show-default:hover .ibiz-dropdown-form-default-content{display:none}.ibiz-form-item .ibiz-dropdown.is-show-default:hover .ibiz-dropdown-select{display:block}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-form-default-content{display:flex;align-items:center;width:100%;padding:var(--ibiz-form-item-hover-edit-padding);font-family:Arial,sans-serif;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-form-item-text-color)}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-form-default-content.is-multiple{height:var(--ibiz-editor-default-line-height)}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-form-default-content.is-multiple .ibiz-dropdown-content-item{height:calc(var(--ibiz-editor-default-line-height) - var(--ibiz-spacing-tight));padding:0 var(--ibiz-spacing-tight);margin:2px 6px 2px 0;font-size:var(--ibiz-font-size-small);line-height:calc(var(--ibiz-editor-default-line-height) - var(--ibiz-spacing-tight));color:var(--ibiz-editor-default-text-color);background-color:var(--ibiz-color-fill-0);border:1px solid transparent;border-radius:var(--ibiz-border-radius-small)}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-select{display:none}.ibiz-form-item .ibiz-dropdown.is-show-default.is-editable .ibiz-dropdown-form-default-content{display:none}.ibiz-form-item .ibiz-dropdown.is-show-default.is-editable .ibiz-dropdown-select{display:block}
1
+ .ibiz-dropdown{width:var(--ibiz-dropdown-width);--ibiz-dropdown-width:100%;--ibiz-dropdown-readonly-text-item-color:var(--ibiz-form-item-text-color)}.ibiz-dropdown__branch-node>.el-tree-node__content{--ibiz-color-disabled-text:var(--ibiz-color-text-0)}.ibiz-dropdown .el-select{width:100%}.ibiz-dropdown-readonly-text-item{margin-right:var(--ibiz-spacing-tight);font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-dropdown-readonly-text-item-color)}.ibiz-dropdown-readonly-text-item .ibiz-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-width-icon-medium);height:var(--ibiz-width-icon-medium);margin-right:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-regular)}.el-select-dropdown__item{width:100%;background-color:var(--ibiz-dropdown-select-option-item-bkcolor)}.ibiz-dropdown-select-option-content{display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%;color:var(--ibiz-dropdown-select-option-item-color)}.ibiz-dropdown-select-option-content__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-dropdown-select-option-content .ibiz-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-width-icon-medium);height:var(--ibiz-width-icon-medium);margin-right:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-regular)}.ibiz-dropdown-form-default-content{display:none}.ibiz-form-item .ibiz-dropdown.is-show-default:hover .ibiz-dropdown-form-default-content{display:none}.ibiz-form-item .ibiz-dropdown.is-show-default:hover .ibiz-dropdown-select{display:block}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-form-default-content{display:flex;align-items:center;width:100%;padding:var(--ibiz-form-item-hover-edit-padding);font-family:Arial,sans-serif;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-form-item-text-color)}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-form-default-content.is-multiple{height:var(--ibiz-editor-default-line-height)}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-form-default-content.is-multiple .ibiz-dropdown-content-item{height:calc(var(--ibiz-editor-default-line-height) - var(--ibiz-spacing-tight));padding:0 var(--ibiz-spacing-tight);margin:2px 6px 2px 0;font-size:var(--ibiz-font-size-small);line-height:calc(var(--ibiz-editor-default-line-height) - var(--ibiz-spacing-tight));color:var(--ibiz-editor-default-text-color);background-color:var(--ibiz-color-fill-0);border:1px solid transparent;border-radius:var(--ibiz-border-radius-small)}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-select{display:none}.ibiz-form-item .ibiz-dropdown.is-show-default .ibiz-dropdown-select .el-input__prefix-inner>:last-child{margin-right:var(--ibiz-spacing-none)}.ibiz-form-item .ibiz-dropdown.is-show-default.is-editable .ibiz-dropdown-form-default-content{display:none}.ibiz-form-item .ibiz-dropdown.is-show-default.is-editable .ibiz-dropdown-select{display:block}.ibiz-dropdown--round .ibiz-dropdown-readonly-text-item{display:inline-flex;align-items:center;padding-right:var(--ibiz-spacing-base);padding-left:var(--ibiz-spacing-base);margin-right:var(--ibiz-spacing-extra-tight);line-height:var(--ibiz-spacing-loose);color:var(--ibiz-dropdown-select-option-item-color);background-color:var(--ibiz-dropdown-select-option-item-bkcolor);border-radius:var(--ibiz-spacing-base)}.ibiz-dropdown--round .ibiz-dropdown-readonly-text-item:first-child{margin-left:calc(var(--ibiz-spacing-base-tight) - var(--ibiz-spacing-super-tight)/ 2)}.ibiz-dropdown--round .ibiz-dropdown-select .el-select__tags{display:none}.ibiz-dropdown--round .ibiz-dropdown-select .el-input__inner{flex:1 1 0;opacity:0}.ibiz-dropdown--round .ibiz-dropdown-select-option-text{display:inline-flex;align-items:center;padding-right:var(--ibiz-spacing-base);padding-left:var(--ibiz-spacing-base);margin-right:var(--ibiz-spacing-extra-tight);line-height:var(--ibiz-spacing-loose);color:var(--ibiz-dropdown-select-option-item-color);background-color:var(--ibiz-dropdown-select-option-item-bkcolor);border-radius:var(--ibiz-spacing-base)}.ibiz-dropdown-popper--round .el-select-dropdown__item{display:flex;align-items:center;height:calc(var(--ibiz-spacing-extra-loose) + var(--ibiz-spacing-extra-tight));line-height:calc(var(--ibiz-spacing-extra-loose) + var(--ibiz-spacing-extra-tight));background-color:transparent}.ibiz-dropdown-popper--round .ibiz-dropdown-select-option-content{flex:0 0 auto;width:auto;min-width:0;height:auto;padding-right:var(--ibiz-spacing-base);padding-left:var(--ibiz-spacing-base);line-height:var(--ibiz-spacing-loose);color:var(--ibiz-dropdown-select-option-item-color);background-color:var(--ibiz-dropdown-select-option-item-bkcolor);border-radius:var(--ibiz-spacing-base)}