@ibiz-template/vue3-components 0.7.41-alpha.15 → 0.7.41-alpha.16

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 (65) hide show
  1. package/dist/index-U4v1OOOD.js +1 -0
  2. package/dist/index-lFGFvnYE.js +1 -0
  3. package/dist/index-m8q8r8br.js +4 -0
  4. package/dist/index.min.css +1 -1
  5. package/dist/index.system.min.js +1 -1
  6. package/dist/{wang-editor-yDknWojV.js → wang-editor-_06OYPpu.js} +1 -1
  7. package/dist/{xlsx-util-8l4wyK1s.js → xlsx-util-FNiwKrqm.js} +1 -1
  8. package/es/common/index.mjs +2 -0
  9. package/es/common/kanben-setting/kanben-setting.css +1 -0
  10. package/es/common/kanben-setting/kanben-setting.d.ts +42 -0
  11. package/es/common/kanben-setting/kanben-setting.mjs +65 -0
  12. package/es/control/data-view/data-view.css +1 -1
  13. package/es/control/data-view/data-view.mjs +42 -13
  14. package/es/control/drbar/drbar.controller.mjs +2 -0
  15. package/es/control/drtab/drtab.controller.mjs +2 -0
  16. package/es/control/form/edit-form/edit-form.mjs +11 -0
  17. package/es/control/form/form-detail/form-item/form-item.mjs +11 -7
  18. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.mjs +4 -1
  19. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.mjs +1 -0
  20. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-single-form/repeater-single-form.d.ts +6 -0
  21. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-single-form/repeater-single-form.mjs +4 -0
  22. package/es/control/kanban/kanban.css +1 -1
  23. package/es/control/kanban/kanban.mjs +16 -9
  24. package/es/control/kanban/swimlane-kanban/swimlane-kanban.css +1 -1
  25. package/es/control/kanban/swimlane-kanban/swimlane-kanban.d.ts +0 -6
  26. package/es/control/kanban/swimlane-kanban/swimlane-kanban.mjs +20 -9
  27. package/es/control/list/list.css +1 -1
  28. package/es/control/list/list.mjs +14 -1
  29. package/es/locale/en/index.d.ts +5 -0
  30. package/es/locale/en/index.mjs +6 -1
  31. package/es/locale/zh-CN/index.d.ts +5 -0
  32. package/es/locale/zh-CN/index.mjs +6 -1
  33. package/es/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.mjs +20 -5
  34. package/es/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.d.ts +1950 -1
  35. package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.util.d.ts +53 -6
  36. package/es/panel-component/app-extend-menu/extend-menu-base/extend-standard-menu/extend-standard-menu.css +1 -0
  37. package/es/panel-component/app-extend-menu/extend-menu-base/extend-standard-menu/extend-standard-menu.d.ts +2031 -0
  38. package/es/panel-component/app-extend-menu/extend-menu-base/extend-standard-menu/extend-standard-menu.mjs +278 -0
  39. package/lib/common/index.cjs +2 -0
  40. package/lib/common/kanben-setting/kanben-setting.cjs +67 -0
  41. package/lib/common/kanben-setting/kanben-setting.css +1 -0
  42. package/lib/control/data-view/data-view.cjs +42 -13
  43. package/lib/control/data-view/data-view.css +1 -1
  44. package/lib/control/drbar/drbar.controller.cjs +2 -0
  45. package/lib/control/drtab/drtab.controller.cjs +2 -0
  46. package/lib/control/form/edit-form/edit-form.cjs +11 -0
  47. package/lib/control/form/form-detail/form-item/form-item.cjs +11 -7
  48. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.cjs +4 -1
  49. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.cjs +1 -0
  50. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-single-form/repeater-single-form.cjs +4 -0
  51. package/lib/control/kanban/kanban.cjs +15 -8
  52. package/lib/control/kanban/kanban.css +1 -1
  53. package/lib/control/kanban/swimlane-kanban/swimlane-kanban.cjs +20 -9
  54. package/lib/control/kanban/swimlane-kanban/swimlane-kanban.css +1 -1
  55. package/lib/control/list/list.cjs +14 -1
  56. package/lib/control/list/list.css +1 -1
  57. package/lib/locale/en/index.cjs +6 -1
  58. package/lib/locale/zh-CN/index.cjs +6 -1
  59. package/lib/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.cjs +20 -5
  60. package/lib/panel-component/app-extend-menu/extend-menu-base/extend-standard-menu/extend-standard-menu.cjs +280 -0
  61. package/lib/panel-component/app-extend-menu/extend-menu-base/extend-standard-menu/extend-standard-menu.css +1 -0
  62. package/package.json +4 -4
  63. package/dist/index-1hn7qv2s.js +0 -4
  64. package/dist/index-EYFbyMUF.js +0 -1
  65. package/dist/index-kNUznzXY.js +0 -1
@@ -0,0 +1,278 @@
1
+ import { isVNode, createVNode, resolveComponent, ref, computed, defineComponent } from 'vue';
2
+ import { showTitle } from '@ibiz-template/core';
3
+ import { useNamespace } from '@ibiz-template/vue3-util';
4
+ import { createUUID } from 'qx-util';
5
+ import { getMenus, findMenuItem } from '../extend-menu-base.util.mjs';
6
+ import './extend-standard-menu.css';
7
+
8
+ "use strict";
9
+ function _isSlot(s) {
10
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
11
+ }
12
+ const ellipsisSvg = () => {
13
+ return createVNode("ion-icon", {
14
+ "name": "ellipsis-horizontal"
15
+ }, null);
16
+ };
17
+ function renderMenuItem(_params) {
18
+ var _a, _b, _c, _d;
19
+ const {
20
+ isFirst,
21
+ menu,
22
+ collapse,
23
+ ns,
24
+ menuAlign,
25
+ menuItemsState
26
+ } = _params;
27
+ if (!menu.id || menuItemsState && !((_a = menuItemsState[menu.id]) == null ? void 0 : _a.visible)) {
28
+ return;
29
+ }
30
+ if (menu.itemType === "MENUITEM") {
31
+ let content;
32
+ if (!(isFirst && collapse)) {
33
+ content = [menu.sysImage ? createVNode(resolveComponent("iBizIcon"), {
34
+ "class": ns.e("icon"),
35
+ "icon": menu.sysImage
36
+ }, null) : null, createVNode("span", {
37
+ "class": ns.e("caption")
38
+ }, [menu.caption])];
39
+ } else {
40
+ content = [menu.sysImage ? createVNode(resolveComponent("iBizIcon"), {
41
+ "class": ns.e("icon"),
42
+ "icon": menu.sysImage
43
+ }, null) : createVNode("span", {
44
+ "class": ns.e("caption")
45
+ }, [(_b = menu.caption) == null ? void 0 : _b.slice(0, 1)])];
46
+ }
47
+ return !(isFirst && collapse) ? createVNode(resolveComponent("el-menu-item"), {
48
+ "class": [ns.e("item"), "".concat(((_c = menu.sysCss) == null ? void 0 : _c.cssName) || "")],
49
+ "index": menu.id,
50
+ "title": showTitle(menu.tooltip)
51
+ }, _isSlot(content) ? content : {
52
+ default: () => [content]
53
+ }) : createVNode(resolveComponent("el-tooltip"), {
54
+ "class": ns.b("tooltip"),
55
+ "content": menu.caption,
56
+ "placement": menuAlign === "horizontal" ? "bottom" : "left",
57
+ "theme": "light"
58
+ }, {
59
+ default: () => {
60
+ var _a2;
61
+ return [createVNode(resolveComponent("el-menu-item"), {
62
+ "class": [ns.e("item"), "".concat(((_a2 = menu.sysCss) == null ? void 0 : _a2.cssName) || "")],
63
+ "index": menu.id
64
+ }, _isSlot(content) ? content : {
65
+ default: () => [content]
66
+ })];
67
+ }
68
+ });
69
+ }
70
+ if (menu.itemType === "SEPERATOR") {
71
+ const direction = menuAlign === "horizontal" && isFirst ? "vertical" : "horizontal";
72
+ return createVNode(resolveComponent("el-divider"), {
73
+ "direction": direction,
74
+ "class": ns.em("separator", direction),
75
+ "id": menu.id
76
+ }, null);
77
+ }
78
+ if (menu.itemType === "RAWITEM") {
79
+ return createVNode(resolveComponent("el-menu-item"), {
80
+ "index": menu.id,
81
+ "title": showTitle(menu.tooltip),
82
+ "class": [ns.e("rawitem"), "".concat(((_d = menu.sysCss) == null ? void 0 : _d.cssName) || "")]
83
+ }, {
84
+ default: () => [createVNode(resolveComponent("iBizRawItem"), {
85
+ "rawItem": menu
86
+ }, null)]
87
+ });
88
+ }
89
+ }
90
+ function renderSubmenu(_params) {
91
+ var _a, _b;
92
+ const {
93
+ isFirst,
94
+ menu,
95
+ collapse,
96
+ ns,
97
+ menuAlign,
98
+ menuItemsState
99
+ } = _params;
100
+ if (!menu.id || menuItemsState && !((_a = menuItemsState[menu.id]) == null ? void 0 : _a.visible)) {
101
+ return;
102
+ }
103
+ return createVNode(resolveComponent("el-sub-menu"), {
104
+ "class": [ns.b("submenu"), "".concat(((_b = menu.sysCss) == null ? void 0 : _b.cssName) || "")],
105
+ "index": menu.id,
106
+ "teleported": true,
107
+ "popper-class": [ns.b("popup-container")]
108
+ }, {
109
+ default: () => menu.children && menu.children.map((item) => {
110
+ if (item.children && item.children) {
111
+ return renderSubmenu({
112
+ isFirst: false,
113
+ menu: item,
114
+ collapse,
115
+ ns,
116
+ menuAlign,
117
+ menuItemsState
118
+ });
119
+ }
120
+ return renderMenuItem({
121
+ isFirst: false,
122
+ menu: item,
123
+ collapse,
124
+ ns,
125
+ menuAlign,
126
+ menuItemsState
127
+ });
128
+ }),
129
+ title: () => {
130
+ var _a2;
131
+ if (collapse) {
132
+ if (menu.sysImage) {
133
+ return createVNode(resolveComponent("iBizIcon"), {
134
+ "class": ns.e("icon"),
135
+ "icon": menu.sysImage
136
+ }, null);
137
+ }
138
+ return [isFirst ? (_a2 = menu.caption) == null ? void 0 : _a2.slice(0, 1) : menu.caption, isFirst ? null : createVNode("ion-icon", {
139
+ "name": "chevron-forward-outline"
140
+ }, null)];
141
+ }
142
+ return [createVNode(resolveComponent("iBizIcon"), {
143
+ "class": ns.e("icon"),
144
+ "icon": menu.sysImage
145
+ }, null), createVNode("span", {
146
+ "class": ns.e("caption")
147
+ }, [menu.caption])];
148
+ }
149
+ });
150
+ }
151
+ function renderMenuContent(_params) {
152
+ const {
153
+ refreshKey,
154
+ ns,
155
+ collapse,
156
+ menuAlign,
157
+ position,
158
+ menus,
159
+ menuItemsState,
160
+ handleMenuSelect
161
+ } = _params;
162
+ return createVNode("div", {
163
+ "class": [ns.e("content"), ns.is("collapse", collapse), ns.is(menuAlign, !!menuAlign), ns.is(position == null ? void 0 : position.toLowerCase(), !!position)]
164
+ }, [createVNode(resolveComponent("el-menu"), {
165
+ "key": refreshKey,
166
+ "popper-class": [ns.b("popper")],
167
+ "collapse": collapse,
168
+ "collapse-transition": false,
169
+ "onSelect": handleMenuSelect,
170
+ "theme": "light",
171
+ "mode": menuAlign,
172
+ "ellipsis-icon": () => ellipsisSvg(),
173
+ "ellipsis": menuAlign === "horizontal"
174
+ }, {
175
+ default: () => {
176
+ return menus.map((item) => {
177
+ if (item.children && item.children.length > 0) {
178
+ return renderSubmenu({
179
+ isFirst: true,
180
+ menu: item,
181
+ collapse,
182
+ ns,
183
+ menuAlign,
184
+ menuItemsState
185
+ });
186
+ }
187
+ return renderMenuItem({
188
+ isFirst: true,
189
+ menu: item,
190
+ collapse,
191
+ ns,
192
+ menuAlign,
193
+ menuItemsState
194
+ });
195
+ });
196
+ }
197
+ })]);
198
+ }
199
+ const ExtendStandardMenu = /* @__PURE__ */ defineComponent({
200
+ name: "IBizExtendStandardMenu",
201
+ props: {
202
+ items: {
203
+ type: Object,
204
+ required: true
205
+ },
206
+ menuItemsState: {
207
+ type: Object,
208
+ required: true
209
+ },
210
+ providers: {
211
+ type: Object,
212
+ required: true
213
+ },
214
+ position: {
215
+ type: String,
216
+ required: true
217
+ },
218
+ layoutMode: {
219
+ type: String,
220
+ required: true
221
+ },
222
+ layout: {
223
+ type: Object
224
+ }
225
+ },
226
+ emits: {
227
+ /**
228
+ * @description 项点击事件
229
+ */
230
+ menuItemClick: (_item, _event) => true
231
+ },
232
+ setup(props, {
233
+ emit
234
+ }) {
235
+ const ns = useNamespace("extend-standard-menu");
236
+ const defaultMenuRef = ref();
237
+ const refreshKey = ref(createUUID());
238
+ const collapse = ref(false);
239
+ const menuAlign = computed(() => ["TOP", "BOTTOM"].includes(props.position) ? "horizontal" : "vertical");
240
+ const menus = ref(getMenus(props.items));
241
+ const handleMenuSelect = async (_id, _event) => {
242
+ const menuItem = findMenuItem(_id, props.items);
243
+ if (!(menuItem == null ? void 0 : menuItem.appFuncId)) {
244
+ ibiz.log.warn(ibiz.i18n.t("runtime.controller.control.menu.noConfigured"));
245
+ return;
246
+ }
247
+ emit("menuItemClick", menuItem, _event);
248
+ };
249
+ return {
250
+ ns,
251
+ defaultMenuRef,
252
+ refreshKey,
253
+ collapse,
254
+ menuAlign,
255
+ menus,
256
+ handleMenuSelect
257
+ };
258
+ },
259
+ render() {
260
+ return createVNode("div", {
261
+ "ref": "defaultMenuRef",
262
+ "class": [this.ns.b(), this.ns.b(this.layoutMode.toLowerCase()), this.ns.is(this.position.toLowerCase(), true), this.ns.is(this.menuAlign, true), this.ns.is("collapse", this.collapse)]
263
+ }, [renderMenuContent({
264
+ isLayout: false,
265
+ position: this.position,
266
+ refreshKey: this.refreshKey,
267
+ ns: this.ns,
268
+ collapse: this.collapse,
269
+ menuAlign: this.menuAlign,
270
+ menus: this.menus,
271
+ menuLayout: this.layout,
272
+ menuItemsState: this.menuItemsState,
273
+ handleMenuSelect: this.handleMenuSelect
274
+ })]);
275
+ }
276
+ });
277
+
278
+ export { ExtendStandardMenu };
@@ -37,10 +37,12 @@ var ganttSetting = require('./gantt-setting/gantt-setting.cjs');
37
37
  var navSplit = require('./nav-split/nav-split.cjs');
38
38
  var cropping = require('./cropping/cropping.cjs');
39
39
  var editorEmptyText = require('./editor-empty-text/editor-empty-text.cjs');
40
+ var kanbenSetting = require('./kanben-setting/kanben-setting.cjs');
40
41
 
41
42
  "use strict";
42
43
  const IBizCommonComponents = {
43
44
  install: (v) => {
45
+ v.component(kanbenSetting.IBizKanbanSetting.name, kanbenSetting.IBizKanbanSetting);
44
46
  v.component(editorEmptyText.IBizEditorEmptyText.name, editorEmptyText.IBizEditorEmptyText);
45
47
  v.component(cropping.IBizCropping.name, cropping.IBizCropping);
46
48
  v.component(vue3Util.IBizControlBase.name, vue3Util.IBizControlBase);
@@ -0,0 +1,67 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var vue3Util = require('@ibiz-template/vue3-util');
5
+ require('./kanben-setting.css');
6
+
7
+ "use strict";
8
+ const IBizKanbanSetting = /* @__PURE__ */ vue.defineComponent({
9
+ name: "IBizKanbanSetting",
10
+ props: {
11
+ controller: {
12
+ type: Object,
13
+ required: true
14
+ },
15
+ buttonStyle: {
16
+ type: Object,
17
+ default: () => ({
18
+ circle: false,
19
+ type: "info"
20
+ })
21
+ }
22
+ },
23
+ setup(props) {
24
+ const ns = vue3Util.useNamespace("kanban-setting");
25
+ const groups = vue.computed(() => {
26
+ return props.controller.state.groups;
27
+ });
28
+ return {
29
+ ns,
30
+ groups
31
+ };
32
+ },
33
+ render() {
34
+ return vue.createVNode("div", {
35
+ "class": this.ns.b()
36
+ }, [vue.createVNode(vue.resolveComponent("el-popover"), {
37
+ "trigger": "click",
38
+ "placement": "bottom",
39
+ "popper-class": this.ns.e("popover")
40
+ }, {
41
+ reference: () => {
42
+ return vue.createVNode(vue.resolveComponent("el-button"), this.buttonStyle, {
43
+ default: () => [vue.createVNode("ion-icon", {
44
+ "name": "options-outline",
45
+ "title": ibiz.i18n.t("component.kanbanSetting.hideGroup")
46
+ }, null)]
47
+ });
48
+ },
49
+ default: () => {
50
+ return vue.createVNode("div", {
51
+ "class": this.ns.em("popover", "content")
52
+ }, [this.groups.map((group) => {
53
+ return vue.createVNode(vue.resolveComponent("el-checkbox"), {
54
+ "size": "small",
55
+ "label": group.caption,
56
+ "model-value": !group.hidden,
57
+ "onChange": (val) => {
58
+ group.hidden = !val;
59
+ }
60
+ }, null);
61
+ })]);
62
+ }
63
+ })]);
64
+ }
65
+ });
66
+
67
+ exports.IBizKanbanSetting = IBizKanbanSetting;
@@ -0,0 +1 @@
1
+ .ibiz-kanban-setting__popover--content{display:flex;flex-direction:column;width:100%;max-height:500px;overflow-y:auto}
@@ -166,6 +166,24 @@ const DataViewControl = /* @__PURE__ */ vue.defineComponent({
166
166
  event.stopPropagation();
167
167
  return c.onDbRowClick(item);
168
168
  };
169
+ const renderNewCard = (group) => {
170
+ return vue.createVNode(vue.resolveComponent("el-card"), {
171
+ "shadow": "hover",
172
+ "class": [ns.b("item"), ns.be("item", "new")],
173
+ "title": ibiz.i18n.t("app.newlyBuild"),
174
+ "body-style": {
175
+ width: c.model.cardWidth ? "".concat(c.model.cardWidth, "px") : "auto",
176
+ height: c.model.cardHeight ? "".concat(c.model.cardHeight, "px") : "auto"
177
+ },
178
+ "onClick": (event) => {
179
+ c.onClickNew(event, group == null ? void 0 : group.key);
180
+ }
181
+ }, {
182
+ default: () => [vue.createVNode("ion-icon", {
183
+ "name": "add-outline"
184
+ }, null)]
185
+ });
186
+ };
169
187
  const renderPanelItem = (item, modelData) => {
170
188
  const {
171
189
  context,
@@ -232,8 +250,7 @@ const DataViewControl = /* @__PURE__ */ vue.defineComponent({
232
250
  }, null), panel ? renderPanelItem(item, panel) : renderDefaultItem(item)])]
233
251
  });
234
252
  };
235
- const renderCardLayout = (items) => {
236
- let _slot;
253
+ const renderCardLayout = (items, group) => {
237
254
  const {
238
255
  cardColXS,
239
256
  cardColSM,
@@ -243,8 +260,20 @@ const DataViewControl = /* @__PURE__ */ vue.defineComponent({
243
260
  if (cardColXS || cardColSM || cardColMD || cardColLG)
244
261
  return vue.createVNode(vue.resolveComponent("el-row"), {
245
262
  "class": ns.e("layout-row")
246
- }, _isSlot(_slot = items.map((item) => {
247
- return vue.createVNode(vue.resolveComponent("el-col"), {
263
+ }, {
264
+ default: () => [items.map((item) => {
265
+ return vue.createVNode(vue.resolveComponent("el-col"), {
266
+ "xs": cardColXS,
267
+ "sm": cardColSM,
268
+ "md": cardColMD,
269
+ "lg": cardColLG,
270
+ "class": ns.e("layout-col")
271
+ }, {
272
+ default: () => [vue.createVNode("div", {
273
+ "class": ns.b("scroll-item")
274
+ }, [renderCard(item)])]
275
+ });
276
+ }), c.enableNew && !c.state.readonly && vue.createVNode(vue.resolveComponent("el-col"), {
248
277
  "xs": cardColXS,
249
278
  "sm": cardColSM,
250
279
  "md": cardColMD,
@@ -253,10 +282,8 @@ const DataViewControl = /* @__PURE__ */ vue.defineComponent({
253
282
  }, {
254
283
  default: () => [vue.createVNode("div", {
255
284
  "class": ns.b("scroll-item")
256
- }, [renderCard(item)])]
257
- });
258
- })) ? _slot : {
259
- default: () => [_slot]
285
+ }, [renderNewCard(group)])]
286
+ })]
260
287
  });
261
288
  return vue.createVNode("div", {
262
289
  "class": ns.e("layout-flex")
@@ -264,7 +291,9 @@ const DataViewControl = /* @__PURE__ */ vue.defineComponent({
264
291
  return vue.createVNode("div", {
265
292
  "class": ns.b("scroll-item")
266
293
  }, [renderCard(item)]);
267
- })]);
294
+ }), c.enableNew && !c.state.readonly && vue.createVNode("div", {
295
+ "class": ns.b("scroll-item")
296
+ }, [renderNewCard(group)])]);
268
297
  };
269
298
  const renderGroup = (group) => {
270
299
  const {
@@ -285,7 +314,7 @@ const DataViewControl = /* @__PURE__ */ vue.defineComponent({
285
314
  "onActionClick": (detail, event) => {
286
315
  c.onGroupToolbarClick(detail, event, group);
287
316
  }
288
- }, null)])]), group.children.length > 0 ? renderCardLayout(group.children) : vue.createVNode("div", {
317
+ }, null)])]), group.children.length > 0 ? renderCardLayout(group.children, group) : vue.createVNode("div", {
289
318
  "class": ns.bem("group-content", "item", "empty")
290
319
  }, [ibiz.i18n.t("app.noData")])]);
291
320
  };
@@ -517,15 +546,15 @@ const DataViewControl = /* @__PURE__ */ vue.defineComponent({
517
546
  };
518
547
  },
519
548
  render() {
520
- let _slot2;
549
+ let _slot;
521
550
  return vue.createVNode(vue.resolveComponent("iBizControlNavigation"), {
522
551
  "controller": this.c
523
552
  }, {
524
553
  default: () => [vue.createVNode(vue.resolveComponent("iBizControlBase"), {
525
554
  "class": [this.ns.is("enable-page", !!this.c.state.enablePagingBar)],
526
555
  "controller": this.c
527
- }, _isSlot(_slot2 = this.renderLayoutByStyle()) ? _slot2 : {
528
- default: () => [_slot2]
556
+ }, _isSlot(_slot = this.renderLayoutByStyle()) ? _slot : {
557
+ default: () => [_slot]
529
558
  })]
530
559
  });
531
560
  }
@@ -1 +1 @@
1
- .ibiz-control-dataview{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;--ibiz-control-dataview-item-bg-color:transparent;display:flex;flex-flow:column nowrap;align-items:stretch;justify-content:flex-start;position:relative;height:100%}.ibiz-control-dataview__nav-icon{position:absolute;top:20px;right:10px;color:var(--ibiz-color-primary);cursor:pointer}.ibiz-control-dataview__content{flex-grow:1;height:100%;padding:var(--ibiz-control-dataview-padding);overflow:auto}.ibiz-control-dataview__pagination{flex-shrink:0}.ibiz-control-dataview__load-more{width:calc(100% - var(--ibiz-spacing-base-tight));text-align:center}.ibiz-control-dataview__load-more i{font-size:var(--ibiz-font-size-header-3);color:var(--ibiz-color-text-2);cursor:pointer}.ibiz-control-dataview__load-more i:hover{color:var(--ibiz-color-primary-light-hover)}.ibiz-control-dataview__collapse-expand-icon{width:calc(100% - var(--ibiz-spacing-base-tight));text-align:center}.ibiz-control-dataview__collapse-expand-icon i{font-size:var(--ibiz-font-size-header-3);color:var(--ibiz-color-text-2);cursor:pointer}.ibiz-control-dataview__collapse-expand-icon i:hover{color:var(--ibiz-color-primary-light-hover)}.ibiz-control-dataview__layout-row{padding:var(--ibiz-spacing-tight)}.ibiz-control-dataview__layout-col{padding:0 var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base-tight) 0}.ibiz-control-dataview__layout-flex{display:flex;flex-wrap:wrap;align-content:flex-start;overflow:auto}.ibiz-control-dataview__layout-flex>*{margin:calc(var(--ibiz-spacing-base-tight)/ 2)}.ibiz-control-dataview__batchtoolbar{padding:0 var(--ibiz-spacing-base);margin:var(--ibiz-spacing-tight) var(--ibiz-spacing-super-tight)}.ibiz-control-dataview__quicktoolbar{display:flex;justify-content:center;width:100%}.ibiz-control-dataview-item{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;--ibiz-control-dataview-item-bg-color:transparent;color:var(--ibiz-control-dataview-text-color);cursor:pointer;background-color:var(--ibiz-control-dataview-item-bg-color)}.ibiz-control-dataview-item:hover{background-color:var(--ibiz-control-dataview-hover-bg-color)}.ibiz-control-dataview-item__content{display:flex;align-items:center;width:100%;height:100%}.ibiz-control-dataview-item__content--checkbox{flex-shrink:0;margin-right:var(--ibiz-spacing-tight)!important}.ibiz-control-dataview-item.is-active{background-color:var(--ibiz-control-dataview-active-bg-color)}.ibiz-control-dataview-item-content{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;--ibiz-control-dataview-item-bg-color:transparent}.ibiz-control-dataview-item-content__top--title{text-align:center}.ibiz-control-dataview-item-content__top--description{min-width:150px;text-align:justify;text-justify:newspaper;word-break:break-all}.ibiz-control-dataview-item-content__bottom{display:flex;align-items:center;justify-content:center;padding:var(--ibiz-spacing-tight);margin-top:var(--ibiz-spacing-tight);border-top:1px solid var(--ibiz-color-border)}.ibiz-control-dataview-item-content__bottom--actions{display:flex;justify-content:center}.ibiz-control-dataview-item-content__bottom--actions .ibiz-action-toolbar__item{margin:0}.ibiz-control-dataview-item-content__bottom--actions .ibiz-action-toolbar__item--label.is-has-caption{margin:0}.ibiz-control-dataview-group-content{--ibiz-control-dataview-group-item-header-bg-color:transparent;--ibiz-control-dataview-group-item-header-padding:var(--ibiz-spacing-base-tight);--ibiz-control-dataview-group-item-header-border-color:var(--ibiz-color-border);--ibiz-control-dataview-group-item-caption-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-group-item-caption-font-size:var(--ibiz-font-size-header-5);--ibiz-control-dataview-group-item-caption-font-weight:var(--ibiz-font-weight-bold);--ibiz-control-dataview-group-item-content-bg-color:transparent;--ibiz-control-dataview-group-item-content-padding:var(--ibiz-spacing-tight);width:100%}.ibiz-control-dataview-group-content__item .el-collapse-item__content{display:flex;flex-wrap:wrap}.ibiz-control-dataview-group-content__item--empty{width:100%;text-align:center}.ibiz-control-dataview-group-content__item.is-collapse .ibiz-control-dataview-group-content__item-content{height:0;overflow:hidden}.ibiz-control-dataview-group-content__item-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--ibiz-control-dataview-group-item-header-padding);border-bottom:1px solid var(--ibiz-control-dataview-group-item-header-border-color)}.ibiz-control-dataview-group-content__item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ibiz-control-dataview-group-item-caption-font-size);font-weight:var(--ibiz-control-dataview-group-item-caption-font-weight);color:var(--ibiz-control-dataview-group-item-caption-text-color)}
1
+ .ibiz-control-dataview{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;--ibiz-control-dataview-item-bg-color:transparent;display:flex;flex-flow:column nowrap;align-items:stretch;justify-content:flex-start;position:relative;height:100%}.ibiz-control-dataview__nav-icon{position:absolute;top:20px;right:10px;color:var(--ibiz-color-primary);cursor:pointer}.ibiz-control-dataview__content{flex-grow:1;height:100%;padding:var(--ibiz-control-dataview-padding);overflow:auto}.ibiz-control-dataview__pagination{flex-shrink:0}.ibiz-control-dataview__load-more{width:calc(100% - var(--ibiz-spacing-base-tight));text-align:center}.ibiz-control-dataview__load-more i{font-size:var(--ibiz-font-size-header-3);color:var(--ibiz-color-text-2);cursor:pointer}.ibiz-control-dataview__load-more i:hover{color:var(--ibiz-color-primary-light-hover)}.ibiz-control-dataview__collapse-expand-icon{width:calc(100% - var(--ibiz-spacing-base-tight));text-align:center}.ibiz-control-dataview__collapse-expand-icon i{font-size:var(--ibiz-font-size-header-3);color:var(--ibiz-color-text-2);cursor:pointer}.ibiz-control-dataview__collapse-expand-icon i:hover{color:var(--ibiz-color-primary-light-hover)}.ibiz-control-dataview__layout-row{padding:var(--ibiz-spacing-tight)}.ibiz-control-dataview__layout-col{padding:0 var(--ibiz-spacing-base-tight) var(--ibiz-spacing-base-tight) 0}.ibiz-control-dataview__layout-flex{display:flex;flex-wrap:wrap;align-content:flex-start;overflow:auto}.ibiz-control-dataview__layout-flex>*{margin:calc(var(--ibiz-spacing-base-tight)/ 2)}.ibiz-control-dataview__batchtoolbar{padding:0 var(--ibiz-spacing-base);margin:var(--ibiz-spacing-tight) var(--ibiz-spacing-super-tight)}.ibiz-control-dataview__quicktoolbar{display:flex;justify-content:center;width:100%}.ibiz-control-dataview-item{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;--ibiz-control-dataview-item-bg-color:transparent;color:var(--ibiz-control-dataview-text-color);cursor:pointer;background-color:var(--ibiz-control-dataview-item-bg-color)}.ibiz-control-dataview-item:hover{background-color:var(--ibiz-control-dataview-hover-bg-color)}.ibiz-control-dataview-item__new{color:var(--ibiz-color-text-3);border:2px dashed var(--ibiz-color-border)}.ibiz-control-dataview-item__new .el-card__body{display:flex;align-items:center;justify-content:center}.ibiz-control-dataview-item__content{display:flex;align-items:center;width:100%;height:100%}.ibiz-control-dataview-item__content--checkbox{flex-shrink:0;margin-right:var(--ibiz-spacing-tight)!important}.ibiz-control-dataview-item.is-active{background-color:var(--ibiz-control-dataview-active-bg-color)}.ibiz-control-dataview-item-content{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-2);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;--ibiz-control-dataview-page-height:50px;--ibiz-control-dataview-item-bg-color:transparent}.ibiz-control-dataview-item-content__top--title{text-align:center}.ibiz-control-dataview-item-content__top--description{min-width:150px;text-align:justify;text-justify:newspaper;word-break:break-all}.ibiz-control-dataview-item-content__bottom{display:flex;align-items:center;justify-content:center;padding:var(--ibiz-spacing-tight);margin-top:var(--ibiz-spacing-tight);border-top:1px solid var(--ibiz-color-border)}.ibiz-control-dataview-item-content__bottom--actions{display:flex;justify-content:center}.ibiz-control-dataview-item-content__bottom--actions .ibiz-action-toolbar__item{margin:0}.ibiz-control-dataview-item-content__bottom--actions .ibiz-action-toolbar__item--label.is-has-caption{margin:0}.ibiz-control-dataview-group-content{--ibiz-control-dataview-group-item-header-bg-color:transparent;--ibiz-control-dataview-group-item-header-padding:var(--ibiz-spacing-base-tight);--ibiz-control-dataview-group-item-header-border-color:var(--ibiz-color-border);--ibiz-control-dataview-group-item-caption-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-group-item-caption-font-size:var(--ibiz-font-size-header-5);--ibiz-control-dataview-group-item-caption-font-weight:var(--ibiz-font-weight-bold);--ibiz-control-dataview-group-item-content-bg-color:transparent;--ibiz-control-dataview-group-item-content-padding:var(--ibiz-spacing-tight);width:100%}.ibiz-control-dataview-group-content__item .el-collapse-item__content{display:flex;flex-wrap:wrap}.ibiz-control-dataview-group-content__item--empty{width:100%;text-align:center}.ibiz-control-dataview-group-content__item.is-collapse .ibiz-control-dataview-group-content__item-content{height:0;overflow:hidden}.ibiz-control-dataview-group-content__item-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--ibiz-control-dataview-group-item-header-padding);border-bottom:1px solid var(--ibiz-control-dataview-group-item-header-border-color)}.ibiz-control-dataview-group-content__item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ibiz-control-dataview-group-item-caption-font-size);font-weight:var(--ibiz-control-dataview-group-item-caption-font-weight);color:var(--ibiz-control-dataview-group-item-caption-text-color)}
@@ -129,6 +129,8 @@ class DRBarController extends runtime.ControlController {
129
129
  * @param {boolean} [reset=true]
130
130
  */
131
131
  calcItemStateByCounter(_data, reset = true) {
132
+ if (!this.state.activated)
133
+ return;
132
134
  this.state.drBarItems.forEach((item) => {
133
135
  var _a;
134
136
  if ((_a = item.children) == null ? void 0 : _a.length) {
@@ -139,6 +139,8 @@ class DRTabController extends runtime.ControlController {
139
139
  * @date 2024-05-16 17:05:01
140
140
  */
141
141
  calcItemStateByCounter() {
142
+ if (!this.state.activated)
143
+ return;
142
144
  this.state.drTabPages.forEach((item) => {
143
145
  const visible = runtime.calcItemVisibleByCounter(item, this.counter);
144
146
  if (visible !== void 0) {
@@ -62,6 +62,14 @@ const EditFormControl = /* @__PURE__ */ vue.defineComponent({
62
62
  loadDefault: {
63
63
  type: Boolean,
64
64
  default: true
65
+ },
66
+ /**
67
+ * @description 简单模式下传入的数据索引
68
+ * @default false
69
+ */
70
+ simpleDataIndex: {
71
+ type: Number,
72
+ required: false
65
73
  }
66
74
  },
67
75
  setup(props) {
@@ -73,6 +81,9 @@ const EditFormControl = /* @__PURE__ */ vue.defineComponent({
73
81
  const anchorList = vue.ref([]);
74
82
  const anchorTargetRef = vue.ref();
75
83
  if (props.isSimple) {
84
+ if (props.simpleDataIndex || props.simpleDataIndex === 0) {
85
+ c.setSimpleDataIndex(props.simpleDataIndex);
86
+ }
76
87
  c.evt.on("onMounted", () => {
77
88
  c.setSimpleData(props.data || {});
78
89
  });
@@ -70,13 +70,17 @@ const FormItem = /* @__PURE__ */ vue.defineComponent({
70
70
  } = this.c.model.editor || {};
71
71
  editor = editorItems.map((item, index) => {
72
72
  const controller = this.c.form.details[item.id];
73
- return [vue.createVNode(compositeFormItem.CompositeFormItem, {
74
- "modelData": controller.model,
75
- "controller": controller,
76
- "attrs": this.attrs
77
- }, null), editorItems.length - 1 > index && vue.createVNode("span", {
78
- "class": this.ns.e("composite-separator")
79
- }, [vue.createTextVNode("-")])];
73
+ return [
74
+ vue.createVNode(compositeFormItem.CompositeFormItem, {
75
+ "modelData": controller.model,
76
+ "controller": controller,
77
+ "attrs": this.attrs
78
+ }, null),
79
+ // feat:复合表单项样式2会在编辑器之间加`-`分隔符
80
+ editorItems.length - 1 > index && this.c.model.detailStyle === "STYLE2" && vue.createVNode("span", {
81
+ "class": this.ns.e("composite-separator")
82
+ }, [vue.createTextVNode("-")])
83
+ ];
80
84
  });
81
85
  } else {
82
86
  const editMode = (_d = (_c = (_b = this.c.editor) == null ? void 0 : _b.model) == null ? void 0 : _c.editorParams) == null ? void 0 : _d.editMode;
@@ -27,8 +27,11 @@ const RepeaterGrid = /* @__PURE__ */ vue.defineComponent({
27
27
  const ns = vue3Util.useNamespace("repeater-grid");
28
28
  const formItems = [];
29
29
  core.recursiveIterate(props.controller.repeatedForm, (item) => {
30
+ var _a;
30
31
  if (item.detailType === "FORMITEM") {
31
- formItems.push(item);
32
+ if (((_a = item.editor) == null ? void 0 : _a.editorType) !== "HIDDEN") {
33
+ formItems.push(item);
34
+ }
32
35
  }
33
36
  }, {
34
37
  childrenFields: ["deformPages", "deformTabPages", "deformDetails"]
@@ -61,6 +61,7 @@ const RepeaterMultiForm = /* @__PURE__ */ vue.defineComponent({
61
61
  return vue.createVNode(repeaterSingleForm.RepeaterSingleForm, {
62
62
  "key": index,
63
63
  "data": data,
64
+ "simpleDataIndex": index,
64
65
  "controller": this.controller,
65
66
  "onChange": (value) => {
66
67
  this.onValueChange(value, index);
@@ -17,6 +17,9 @@ const RepeaterSingleForm = /* @__PURE__ */ vue.defineComponent({
17
17
  controller: {
18
18
  type: runtime.FormMDCtrlRepeaterController,
19
19
  required: true
20
+ },
21
+ simpleDataIndex: {
22
+ type: Number
20
23
  }
21
24
  },
22
25
  emits: {
@@ -53,6 +56,7 @@ const RepeaterSingleForm = /* @__PURE__ */ vue.defineComponent({
53
56
  "params": this.controller.params,
54
57
  "modelData": this.controller.repeatedForm,
55
58
  "isSimple": true,
59
+ "simpleDataIndex": this.simpleDataIndex,
56
60
  "data": this.data,
57
61
  "onFormDataChange": this.onFormDataChange,
58
62
  "onCreated": this.onCreated
@@ -368,7 +368,7 @@ const KanbanControl = /* @__PURE__ */ vue.defineComponent({
368
368
  }, {
369
369
  default: () => [vue.createVNode("ion-icon", {
370
370
  "name": "add-outline",
371
- "title": core.showTitle(ibiz.i18n.t("app.newlyBuild"))
371
+ "title": ibiz.i18n.t("app.newlyBuild")
372
372
  }, null)]
373
373
  }), showActionBar && vue.createVNode(vue.resolveComponent("el-dropdown"), {
374
374
  "class": ns.be("group", "header-actions"),
@@ -498,15 +498,22 @@ const KanbanControl = /* @__PURE__ */ vue.defineComponent({
498
498
  }, null) : [vue.createVNode("div", {
499
499
  "class": this.ns.b("group-container")
500
500
  }, [groups.length > 0 && groups.map((group) => {
501
+ if (group.hidden)
502
+ return null;
501
503
  return this.renderGroup(group);
502
504
  })]), groups.length > 0 && vue.createVNode("div", {
503
- "class": this.ns.e("full-btn"),
504
- "onClick": this.onFullScreen
505
- }, [this.isFull ? vue.createVNode("ion-icon", {
506
- "name": "contract-outline"
507
- }, null) : vue.createVNode("ion-icon", {
508
- "name": "expand-outline"
509
- }, null)])]]
505
+ "class": this.ns.b("toolbar")
506
+ }, [this.c.enableGroupHidden && vue.createVNode(vue.resolveComponent("iBizKanbanSetting"), {
507
+ "controller": this.c
508
+ }, null), this.c.enableFullScreen && vue.createVNode(vue.resolveComponent("el-button"), {
509
+ "type": "info",
510
+ "onClick": this.onFullScreen,
511
+ "title": this.isFull ? ibiz.i18n.t("app.cancelFullscreen") : ibiz.i18n.t("app.fullscreen")
512
+ }, {
513
+ default: () => [vue.createVNode("ion-icon", {
514
+ "name": this.isFull ? "contract-outline" : "expand-outline"
515
+ }, null)]
516
+ })])]]
510
517
  });
511
518
  }
512
519
  });