@ibiz-template/vue3-components 0.1.12-dev.0 → 0.1.13

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 (171) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/index.system.min.js +3 -3
  3. package/dist/index.system.min.js.map +1 -1
  4. package/dist/wang-editor-0c05cd5f.js +2 -0
  5. package/dist/wang-editor-0c05cd5f.js.map +1 -0
  6. package/es/common/action-toolbar/action-toolbar.mjs +1 -1
  7. package/es/common/no-data/no-data.mjs +1 -1
  8. package/es/common/rawitem/rawitem.css +1 -1
  9. package/es/common/split/split.css +1 -1
  10. package/es/control/app-menu/app-menu.css +1 -1
  11. package/es/control/app-menu/app-menu.mjs +1 -1
  12. package/es/control/app-menu-icon-view/app-menu-icon-view.mjs +1 -1
  13. package/es/control/calendar/calendar.mjs +1 -1
  14. package/es/control/dashboard/portlet/container-portlet/container-portlet.css +1 -0
  15. package/es/control/dashboard/portlet/container-portlet/container-portlet.d.ts +1 -0
  16. package/es/control/dashboard/portlet/container-portlet/container-portlet.mjs +1 -0
  17. package/es/control/dashboard/portlet/portlet-layout/portlet-layout.css +1 -1
  18. package/es/control/dashboard/portlet/portlet-layout/portlet-layout.mjs +1 -1
  19. package/es/control/data-view/data-view.css +1 -1
  20. package/es/control/drbar/drbar.controller.mjs +2 -8
  21. package/es/control/drtab/drtab.controller.mjs +2 -8
  22. package/es/control/exp-bar/data-view-exp-bar/data-view-exp-bar.css +1 -1
  23. package/es/control/exp-bar/grid-exp-bar/grid-exp-bar.css +1 -1
  24. package/es/control/exp-bar/list-exp-bar/list-exp-bar.css +1 -1
  25. package/es/control/exp-bar/render-util.mjs +2 -2
  26. package/es/control/exp-bar/tree-exp-bar/tree-exp-bar.css +1 -1
  27. package/es/control/form/form/form.mjs +1 -1
  28. package/es/control/form/form-detail/form-button/form-button.css +1 -1
  29. package/es/control/form/form-detail/form-button/form-button.mjs +6 -5
  30. package/es/control/form/form-detail/form-group-panel/form-group-panel.mjs +1 -1
  31. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-shell.d.ts +72 -0
  32. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-shell.mjs +157 -0
  33. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.d.ts +1 -3
  34. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.mjs +17 -100
  35. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.d.ts +1 -3
  36. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.mjs +19 -85
  37. package/es/control/form/form-detail/form-mdctrl/index.mjs +2 -0
  38. package/es/control/form/form-detail/form-page/form-page.css +1 -1
  39. package/es/control/form/search-form/search-form.css +1 -1
  40. package/es/control/form/search-form/search-form.mjs +10 -3
  41. package/es/control/grid/grid-column/grid-field-column/grid-field-column.d.ts +2 -0
  42. package/es/control/grid/grid-column/grid-field-column/grid-field-column.mjs +7 -4
  43. package/es/control/grid/grid-column/grid-field-column/index.d.ts +2 -0
  44. package/es/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.mjs +2 -1
  45. package/es/control/panel/view-layout-panel/index.d.ts +10 -0
  46. package/es/control/panel/view-layout-panel/view-layout-panel.d.ts +11 -3
  47. package/es/control/panel/view-layout-panel/view-layout-panel.mjs +48 -42
  48. package/es/control/toolbar/toolbar.mjs +1 -1
  49. package/es/control/tree/tree.css +1 -1
  50. package/es/devtool/devtool-action.css +1 -0
  51. package/es/devtool/devtool-action.d.ts +26 -0
  52. package/es/devtool/devtool-action.mjs +218 -0
  53. package/es/devtool/index.d.ts +50 -0
  54. package/es/devtool/index.mjs +80 -0
  55. package/es/devtool/interface/devtool-event.d.ts +12 -0
  56. package/es/devtool/interface/devtool-event.mjs +1 -0
  57. package/es/devtool/interface/devtool-view.d.ts +15 -0
  58. package/es/devtool/interface/devtool-view.mjs +1 -0
  59. package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.mjs +1 -1
  60. package/es/editor/html/wang-editor/wang-editor.mjs +5 -0
  61. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.css +1 -1
  62. package/es/editor/text-box/input/input.d.ts +2 -2
  63. package/es/editor/text-box/input/input.mjs +1 -1
  64. package/es/index.d.ts +1 -0
  65. package/es/index.mjs +3 -0
  66. package/es/node_modules/.pnpm/element-plus@2.3.9_vue@3.3.4/node_modules/element-plus/dist/locale/zh-cn.mjs +131 -0
  67. package/es/panel-component/auth-userinfo/auth-userinfo.css +1 -1
  68. package/es/panel-component/auth-userinfo/auth-userinfo.d.ts +3 -0
  69. package/es/panel-component/auth-userinfo/auth-userinfo.mjs +29 -6
  70. package/es/panel-component/auth-userinfo/index.d.ts +3 -0
  71. package/es/panel-component/index.d.ts +1 -0
  72. package/es/panel-component/index.mjs +4 -1
  73. package/es/panel-component/nav-tabs/nav-tabs.css +1 -1
  74. package/es/panel-component/panel-app-header/panel-app-header.css +1 -1
  75. package/es/panel-component/panel-app-title/panel-app-title.css +1 -1
  76. package/es/panel-component/panel-button/panel-button.css +1 -1
  77. package/es/panel-component/panel-button/panel-button.mjs +5 -4
  78. package/es/panel-component/panel-exp-header/panel-exp-header.css +1 -1
  79. package/es/panel-component/panel-index-view-search/index.d.ts +28 -0
  80. package/es/panel-component/panel-index-view-search/index.mjs +17 -0
  81. package/es/panel-component/panel-index-view-search/panel-index-view-search.css +1 -0
  82. package/es/panel-component/panel-index-view-search/panel-index-view-search.d.ts +30 -0
  83. package/es/panel-component/panel-index-view-search/panel-index-view-search.mjs +82 -0
  84. package/es/panel-component/panel-index-view-search/panel-index-view-search.provider.d.ts +13 -0
  85. package/es/panel-component/panel-index-view-search/panel-index-view-search.provider.mjs +20 -0
  86. package/es/panel-component/single-data-container/index.d.ts +10 -0
  87. package/es/panel-component/single-data-container/single-data-container.controller.d.ts +37 -2
  88. package/es/panel-component/single-data-container/single-data-container.controller.mjs +75 -1
  89. package/es/panel-component/single-data-container/single-data-container.d.ts +11 -2
  90. package/es/panel-component/single-data-container/single-data-container.mjs +34 -21
  91. package/es/util/app-drawer/app-drawer-component.css +1 -1
  92. package/es/view/common/index.d.ts +1 -0
  93. package/es/view/common/view.css +1 -1
  94. package/es/view/common/view.d.ts +1 -0
  95. package/es/view/common/view.mjs +13 -1
  96. package/es/view-engine/tab-exp-view.engine.d.ts +1 -0
  97. package/es/view-engine/tab-exp-view.engine.mjs +8 -1
  98. package/lib/common/action-toolbar/action-toolbar.cjs +1 -1
  99. package/lib/common/no-data/no-data.cjs +1 -1
  100. package/lib/common/rawitem/rawitem.css +1 -1
  101. package/lib/common/split/split.css +1 -1
  102. package/lib/control/app-menu/app-menu.cjs +1 -1
  103. package/lib/control/app-menu/app-menu.css +1 -1
  104. package/lib/control/app-menu-icon-view/app-menu-icon-view.cjs +1 -1
  105. package/lib/control/calendar/calendar.cjs +1 -1
  106. package/lib/control/dashboard/portlet/container-portlet/container-portlet.cjs +1 -0
  107. package/lib/control/dashboard/portlet/container-portlet/container-portlet.css +1 -0
  108. package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.cjs +1 -1
  109. package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.css +1 -1
  110. package/lib/control/data-view/data-view.css +1 -1
  111. package/lib/control/drbar/drbar.controller.cjs +2 -8
  112. package/lib/control/drtab/drtab.controller.cjs +2 -8
  113. package/lib/control/exp-bar/data-view-exp-bar/data-view-exp-bar.css +1 -1
  114. package/lib/control/exp-bar/grid-exp-bar/grid-exp-bar.css +1 -1
  115. package/lib/control/exp-bar/list-exp-bar/list-exp-bar.css +1 -1
  116. package/lib/control/exp-bar/render-util.cjs +2 -2
  117. package/lib/control/exp-bar/tree-exp-bar/tree-exp-bar.css +1 -1
  118. package/lib/control/form/form/form.cjs +1 -1
  119. package/lib/control/form/form-detail/form-button/form-button.cjs +6 -5
  120. package/lib/control/form/form-detail/form-button/form-button.css +1 -1
  121. package/lib/control/form/form-detail/form-group-panel/form-group-panel.cjs +1 -1
  122. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-shell.cjs +159 -0
  123. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.cjs +16 -99
  124. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.cjs +18 -84
  125. package/lib/control/form/form-detail/form-mdctrl/index.cjs +2 -0
  126. package/lib/control/form/form-detail/form-page/form-page.css +1 -1
  127. package/lib/control/form/search-form/search-form.cjs +10 -3
  128. package/lib/control/form/search-form/search-form.css +1 -1
  129. package/lib/control/grid/grid-column/grid-field-column/grid-field-column.cjs +7 -4
  130. package/lib/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.cjs +2 -1
  131. package/lib/control/panel/view-layout-panel/view-layout-panel.cjs +47 -41
  132. package/lib/control/toolbar/toolbar.cjs +1 -1
  133. package/lib/control/tree/tree.css +1 -1
  134. package/lib/devtool/devtool-action.cjs +220 -0
  135. package/lib/devtool/devtool-action.css +1 -0
  136. package/lib/devtool/index.cjs +83 -0
  137. package/lib/devtool/interface/devtool-event.cjs +2 -0
  138. package/lib/devtool/interface/devtool-view.cjs +2 -0
  139. package/lib/editor/check-box/ibiz-checkbox/ibiz-checkbox.cjs +1 -1
  140. package/lib/editor/html/wang-editor/wang-editor.cjs +5 -0
  141. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.css +1 -1
  142. package/lib/editor/text-box/input/input.cjs +1 -1
  143. package/lib/index.cjs +165 -159
  144. package/lib/node_modules/.pnpm/element-plus@2.3.9_vue@3.3.4/node_modules/element-plus/dist/locale/zh-cn.cjs +135 -0
  145. package/lib/panel-component/auth-userinfo/auth-userinfo.cjs +28 -5
  146. package/lib/panel-component/auth-userinfo/auth-userinfo.css +1 -1
  147. package/lib/panel-component/index.cjs +19 -14
  148. package/lib/panel-component/nav-tabs/nav-tabs.css +1 -1
  149. package/lib/panel-component/panel-app-header/panel-app-header.css +1 -1
  150. package/lib/panel-component/panel-app-title/panel-app-title.css +1 -1
  151. package/lib/panel-component/panel-button/panel-button.cjs +5 -4
  152. package/lib/panel-component/panel-button/panel-button.css +1 -1
  153. package/lib/panel-component/panel-exp-header/panel-exp-header.css +1 -1
  154. package/lib/panel-component/panel-index-view-search/index.cjs +23 -0
  155. package/lib/panel-component/panel-index-view-search/panel-index-view-search.cjs +84 -0
  156. package/lib/panel-component/panel-index-view-search/panel-index-view-search.css +1 -0
  157. package/lib/panel-component/panel-index-view-search/panel-index-view-search.provider.cjs +22 -0
  158. package/lib/panel-component/single-data-container/single-data-container.cjs +33 -20
  159. package/lib/panel-component/single-data-container/single-data-container.controller.cjs +74 -0
  160. package/lib/util/app-drawer/app-drawer-component.css +1 -1
  161. package/lib/util/confirm-util/confirm-util.cjs +5 -5
  162. package/lib/util/loading-util/loading-util.cjs +2 -2
  163. package/lib/util/message-util/message-util.cjs +5 -5
  164. package/lib/util/modal-util/modal-util.cjs +6 -6
  165. package/lib/util/notification-util/notification-util.cjs +5 -5
  166. package/lib/view/common/view.cjs +12 -0
  167. package/lib/view/common/view.css +1 -1
  168. package/lib/view-engine/tab-exp-view.engine.cjs +7 -0
  169. package/package.json +6 -6
  170. package/dist/wang-editor-675011c6.js +0 -2
  171. package/dist/wang-editor-675011c6.js.map +0 -1
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
6
  var vue3Util = require('@ibiz-template/vue3-util');
7
- var runtime = require('@ibiz-template/runtime');
8
7
  var formMdctrlContainer = require('../../form-mdctrl-container/form-mdctrl-container.cjs');
9
8
 
10
9
  function _isSlot(s) {
@@ -18,115 +17,33 @@ const FormMDCtrlRepeaterForm = /* @__PURE__ */ vue.defineComponent({
18
17
  required: true
19
18
  }
20
19
  },
21
- setup(props, {
22
- slots
23
- }) {
20
+ setup(props) {
24
21
  const ns = vue3Util.useNamespace("form-mdctrl");
25
22
  vue3Util.useController(props.controller);
26
23
  const c = props.controller;
27
- c.state = vue.reactive(c.state);
28
- c.useFormMdCtrlCtx();
29
- const slotProps = {
30
- form: c
31
- };
32
- const getDetailController = (itemController, name) => {
33
- const detail = itemController.find((item) => {
34
- return item.name === name;
35
- });
36
- return detail == null ? void 0 : detail.c;
37
- };
38
- const renderByDetailType = (detail, item, index) => {
39
- let _slot;
40
- if (detail.hidden) {
41
- return;
42
- }
43
- const detailId = detail.id;
44
- const controller = getDetailController(c.formDetails[index], detailId);
45
- const detailProps = {
46
- modelData: detail,
47
- controller,
48
- key: detail.id
49
- };
50
- if (slots[detailId]) {
51
- return vue.renderSlot(slots, detailId, {
52
- ...slotProps,
53
- ...detailProps
54
- });
55
- }
56
- const childSlots = {};
57
- if (detail.detailType === "FORMITEM" && slots[`${detailId}_editor`]) {
58
- childSlots.default = (...args) => {
59
- return slots[`${detailId}_editor`](...args);
60
- };
61
- }
62
- const childDetails = runtime.findChildFormDetails(detail);
63
- if (childDetails.length) {
64
- childSlots.default = () => childDetails.map((child) => {
65
- return renderByDetailType(child, item, index);
66
- });
67
- }
68
- const provider = (controller == null ? void 0 : controller.form).providers[detailId];
69
- if (!provider) {
70
- return vue.createVNode("div", null, [vue.createTextVNode("\u6682\u672A\u652F\u6301\u7684\u8868\u5355\u9879\u7C7B\u578B: "), detail.detailType, vue.createTextVNode("\u6216\u627E\u4E0D\u5230\u5BF9\u5E94\u9002\u914D\u5668")]);
71
- }
72
- const component = vue.resolveComponent(provider.component);
73
- return vue.createVNode(vue.resolveComponent("iBizCol"), {
74
- "layoutPos": detailProps.modelData.layoutPos,
75
- "state": detailProps.controller.state
76
- }, _isSlot(_slot = vue.h(component, {
77
- ...detailProps
78
- }, childSlots)) ? _slot : {
79
- default: () => [_slot]
80
- });
81
- };
82
24
  return {
83
25
  ns,
84
- c,
85
- renderByDetailType
26
+ c
86
27
  };
87
28
  },
88
29
  render() {
89
- let _slot3;
90
- if (!this.c || !this.c.state.isInit) {
30
+ let _slot;
31
+ if (!this.c) {
91
32
  return;
92
33
  }
93
- const renderDetails = (item, index) => {
94
- var _a;
95
- if (!this.c.data) {
96
- return null;
97
- }
98
- return (_a = this.c.model.deformDetails) == null ? void 0 : _a.map((detail) => {
99
- return this.renderByDetailType(detail, item, index);
100
- });
101
- };
102
34
  const renderContent = () => {
103
35
  return this.c.data.map((item, index) => {
104
- let _slot2;
105
- return vue.createVNode("div", {
106
- "class": this.ns.b("form-content")
107
- }, [vue.createVNode("div", {
108
- "class": this.ns.b("form-content-container")
109
- }, [vue.createVNode(vue.resolveComponent("iBizRow"), {
110
- "layout": this.c.model.layout
111
- }, _isSlot(_slot2 = renderDetails(item, index)) ? _slot2 : {
112
- default: () => [_slot2]
113
- })]), vue.createVNode("div", {
114
- "class": this.ns.b("btn")
115
- }, [vue.createVNode(vue.resolveComponent("el-popconfirm"), {
116
- "title": "\u662F\u5426\u5220\u9664\u8BE5\u9879",
117
- "confirm-button-text": "\u786E\u8BA4",
118
- "cancel-button-text": "\u53D6\u6D88",
119
- "onConfirm": () => this.c.onDataRemove(index)
120
- }, {
121
- reference: () => {
122
- return vue.createVNode(vue.resolveComponent("el-button"), {
123
- "type": "danger",
124
- "class": this.ns.b("remove-btn")
125
- }, {
126
- default: () => [vue.createTextVNode("\u5220\u9664")]
127
- });
36
+ return vue.createVNode(vue.resolveComponent("iBizFormMDCtrlRepeaterFormShell"), {
37
+ "modelData": this.c.model,
38
+ "context": this.c.parent.form.context,
39
+ "params": this.c.parent.form.params,
40
+ "data": item,
41
+ "index": index,
42
+ "controller": this.c,
43
+ "onControllerAppear": (c) => {
44
+ this.c.setFromController(c);
128
45
  }
129
- })])]);
46
+ }, null);
130
47
  });
131
48
  };
132
49
  return vue.createVNode(formMdctrlContainer.FormMDCtrlContainer, {
@@ -134,8 +51,8 @@ const FormMDCtrlRepeaterForm = /* @__PURE__ */ vue.defineComponent({
134
51
  "onInsertButtonClick": () => {
135
52
  this.c.onDataInsert();
136
53
  }
137
- }, _isSlot(_slot3 = renderContent()) ? _slot3 : {
138
- default: () => [_slot3]
54
+ }, _isSlot(_slot = renderContent()) ? _slot : {
55
+ default: () => [_slot]
139
56
  });
140
57
  }
141
58
  });
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
6
  var vue3Util = require('@ibiz-template/vue3-util');
7
- var runtime = require('@ibiz-template/runtime');
8
7
  var formMdctrlContainer = require('../../form-mdctrl-container/form-mdctrl-container.cjs');
9
8
 
10
9
  function _isSlot(s) {
@@ -18,104 +17,39 @@ const FormMDCtrlRepeaterFormOne = /* @__PURE__ */ vue.defineComponent({
18
17
  required: true
19
18
  }
20
19
  },
21
- setup(props, {
22
- slots
23
- }) {
20
+ setup(props) {
24
21
  const ns = vue3Util.useNamespace("form-mdctrl");
25
22
  vue3Util.useController(props.controller);
26
23
  const c = props.controller;
27
- c.state = vue.reactive(c.state);
28
- c.useFormMdCtrlCtx();
29
- const slotProps = {
30
- form: c
31
- };
32
- const getDetailController = (itemController, name) => {
33
- const detail = itemController.find((item) => {
34
- return item.name === name;
35
- });
36
- return detail == null ? void 0 : detail.c;
37
- };
38
- const renderByDetailType = (detail, item) => {
39
- let _slot;
40
- if (detail.hidden) {
41
- return;
42
- }
43
- const detailId = detail.id;
44
- const controller = getDetailController(c.formDetail, detailId);
45
- const detailProps = {
46
- modelData: detail,
47
- controller,
48
- key: detail.id
49
- };
50
- if (slots[detailId]) {
51
- return vue.renderSlot(slots, detailId, {
52
- ...slotProps,
53
- ...detailProps
54
- });
55
- }
56
- const childSlots = {};
57
- if (detail.detailType === "FORMITEM" && slots[`${detailId}_editor`]) {
58
- childSlots.default = (...args) => {
59
- return slots[`${detailId}_editor`](...args);
60
- };
61
- }
62
- const childDetails = runtime.findChildFormDetails(detail);
63
- if (childDetails.length) {
64
- childSlots.default = () => childDetails.map((child) => {
65
- return renderByDetailType(child, item);
66
- });
67
- }
68
- const provider = (controller == null ? void 0 : controller.form).providers[detailId];
69
- if (!provider) {
70
- return vue.createVNode("div", null, [vue.createTextVNode("\u6682\u672A\u652F\u6301\u7684\u8868\u5355\u9879\u7C7B\u578B: "), detail.detailType, vue.createTextVNode("\u6216\u627E\u4E0D\u5230\u5BF9\u5E94\u9002\u914D\u5668")]);
71
- }
72
- const component = vue.resolveComponent(provider.component);
73
- return vue.createVNode(vue.resolveComponent("iBizCol"), {
74
- "layoutPos": detailProps.modelData.layoutPos,
75
- "state": detailProps.controller.state
76
- }, _isSlot(_slot = vue.h(component, {
77
- ...detailProps
78
- }, childSlots)) ? _slot : {
79
- default: () => [_slot]
80
- });
81
- };
82
24
  return {
83
25
  ns,
84
- c,
85
- renderByDetailType
26
+ c
86
27
  };
87
28
  },
88
29
  render() {
89
- let _slot3;
90
- if (!this.c || !this.c.state.isInit) {
30
+ let _slot;
31
+ if (!this.c) {
91
32
  return;
92
33
  }
93
- const renderDetails = (item) => {
94
- var _a;
95
- if (!this.c.data) {
96
- return null;
97
- }
98
- return (_a = this.c.model.deformDetails) == null ? void 0 : _a.map((detail) => {
99
- return this.renderByDetailType(detail, item);
100
- });
101
- };
102
34
  const renderContent = () => {
103
- let _slot2;
104
- return vue.createVNode("div", {
105
- "class": this.ns.b("form-content")
106
- }, [vue.createVNode("div", {
107
- "class": this.ns.b("form-content-container")
108
- }, [vue.createVNode(vue.resolveComponent("iBizRow"), {
109
- "layout": this.c.model.layout
110
- }, _isSlot(_slot2 = renderDetails(this.c.data)) ? _slot2 : {
111
- default: () => [_slot2]
112
- })])]);
35
+ return vue.createVNode(vue.resolveComponent("iBizFormMDCtrlRepeaterFormShell"), {
36
+ "modelData": this.c.model,
37
+ "context": this.c.parent.form.context,
38
+ "params": this.c.parent.form.params,
39
+ "data": this.c.data,
40
+ "index": 0,
41
+ "controller": this.c,
42
+ "buttonVisible": false,
43
+ "onControllerAppear": (c) => {
44
+ this.c.setFromController(c);
45
+ }
46
+ }, null);
113
47
  };
114
48
  return vue.createVNode(formMdctrlContainer.FormMDCtrlContainer, {
115
49
  "controller": this.c.parent,
116
50
  "buttonVisible": false
117
- }, _isSlot(_slot3 = renderContent()) ? _slot3 : {
118
- default: () => [_slot3]
51
+ }, _isSlot(_slot = renderContent()) ? _slot : {
52
+ default: () => [_slot]
119
53
  });
120
54
  }
121
55
  });
@@ -11,6 +11,7 @@ var formMdctrlGrid = require('./form-mdctrl-grid/form-mdctrl-grid.cjs');
11
11
  var formMdctrlList = require('./form-mdctrl-list/form-mdctrl-list.cjs');
12
12
  var formMdctrlRepeaterFormOne = require('./form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.cjs');
13
13
  var formMdctrlRepeaterForm = require('./form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.cjs');
14
+ var formMdctrlRepeaterFormShell = require('./form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-shell.cjs');
14
15
  var formMdctrlRepeaterGrid = require('./form-mdctrl-repeater/form-mdctrl-repeater-grid/form-mdctrl-repeater-grid.cjs');
15
16
  var formMdctrl_provider = require('./form-mdctrl.provider.cjs');
16
17
 
@@ -23,6 +24,7 @@ const IBizFormMDCtrl = vue3Util.withInstall(formMdctrl.FormMDCtrl, function(v) {
23
24
  v.component(formMdctrlRepeaterForm.FormMDCtrlRepeaterForm.name, formMdctrlRepeaterForm.FormMDCtrlRepeaterForm);
24
25
  v.component(formMdctrlRepeaterFormOne.FormMDCtrlRepeaterFormOne.name, formMdctrlRepeaterFormOne.FormMDCtrlRepeaterFormOne);
25
26
  v.component(formMdctrlRepeaterGrid.FormMDCtrlRepeaterGrid.name, formMdctrlRepeaterGrid.FormMDCtrlRepeaterGrid);
27
+ v.component(formMdctrlRepeaterFormShell.FormMDCtrlRepeaterFormShell.name, formMdctrlRepeaterFormShell.FormMDCtrlRepeaterFormShell);
26
28
  runtime.registerFormDetailProvider("MDCTRL", () => new formMdctrl_provider.FormMDCtrlProvider());
27
29
  });
28
30
 
@@ -1 +1 @@
1
- .ibiz-form-page{--ibiz-form-page-font-size:var(--ibiz-font-size-regular);--ibiz-form-page-header-border-color:var(--ibiz-color-border);--ibiz-form-page-text-color:var(--ibiz-color-text-2);--ibiz-form-page-bg-color:transparent;--ibiz-form-page-hover-text-color:var(--ibiz-color-text-0);--ibiz-form-page-hover-bg-color:transparent;--ibiz-form-page-active-text-color:var(--ibiz-color-text-0);--ibiz-form-page-active-bg-color:transparent;--ibiz-form-page-active-border-color:var(--ibiz-color-primary)}.ibiz-form-page--no-tab-header .ibiz-form-page-item{padding-top:0}.ibiz-form-page-tab>.el-tabs__header.is-top{margin:0}.ibiz-form-page-tab>.el-tabs__header.is-top .el-tabs__item.is-top{font-size:var(--ibiz-form-page-font-size);color:var(--ibiz-form-page-text-color);background-color:var(--ibiz-form-page-bg-color)}.ibiz-form-page-tab>.el-tabs__header.is-top .el-tabs__item.is-top:hover{color:var(--ibiz-form-page-hover-text-color);background-color:var(--ibiz-form-page-hover-bg-color)}.ibiz-form-page-tab>.el-tabs__header.is-top .el-tabs__item.is-top.is-active{color:var(--ibiz-form-page-active-text-color);background-color:var(--ibiz-form-page-active-bg-color)}.ibiz-form-page-tab .el-tabs__nav-wrap::after{background-color:var(--ibiz-form-page-header-border-color)}.ibiz-form-page-tab .el-tabs__active-bar{background-color:var(--ibiz-form-page-active-border-color)}.ibiz-form-page-item{padding-top:var(--ibiz-padding-top)}.ibiz-form-page-item-child{margin-bottom:var(--ibiz-margin-bottom)}
1
+ .ibiz-form-page{--ibiz-form-page-font-size:var(--ibiz-font-size-header-4);--ibiz-form-page-header-border-color:var(--ibiz-color-border);--ibiz-form-page-text-color:var(--ibiz-color-text-2);--ibiz-form-page-bg-color:transparent;--ibiz-form-page-hover-text-color:var(--ibiz-color-primary);--ibiz-form-page-hover-bg-color:transparent;--ibiz-form-page-active-text-color:var(--ibiz-color-primary);--ibiz-form-page-active-bg-color:transparent;--ibiz-form-page-active-border-color:var(--ibiz-color-primary)}.ibiz-form-page--no-tab-header .ibiz-form-page-item{padding-top:0}.ibiz-form-page-tab>.el-tabs__header.is-top{margin:0}.ibiz-form-page-tab>.el-tabs__header.is-top .el-tabs__item.is-top{font-size:var(--ibiz-form-page-font-size);color:var(--ibiz-form-page-text-color);background-color:var(--ibiz-form-page-bg-color)}.ibiz-form-page-tab>.el-tabs__header.is-top .el-tabs__item.is-top:hover{color:var(--ibiz-form-page-hover-text-color);background-color:var(--ibiz-form-page-hover-bg-color)}.ibiz-form-page-tab>.el-tabs__header.is-top .el-tabs__item.is-top.is-active{color:var(--ibiz-form-page-active-text-color);background-color:var(--ibiz-form-page-active-bg-color)}.ibiz-form-page-tab .el-tabs__nav-wrap::after{background-color:var(--ibiz-form-page-header-border-color)}.ibiz-form-page-tab .el-tabs__active-bar{background-color:var(--ibiz-form-page-active-border-color)}.ibiz-form-page-item{padding-top:var(--ibiz-padding-top)}.ibiz-form-page-item-child{margin-bottom:var(--ibiz-margin-bottom)}
@@ -44,15 +44,22 @@ const SearchFormControl = /* @__PURE__ */ vue.defineComponent({
44
44
  return;
45
45
  }
46
46
  return vue.createVNode(vue.resolveComponent("iBizFormControl"), {
47
- "class": this.ns.b(),
47
+ "class": [this.ns.b(), this.ns.is("btn-bottom", this.c.model.searchButtonPos === "BOTTOM")],
48
48
  "controller": this.c,
49
49
  "nativeOnkeyup": (e) => this.c.onKeyUp(e)
50
50
  }, {
51
51
  ...this.$slots,
52
- searchFooter: () => {
52
+ searchButtons: () => {
53
+ if (this.c.model.searchButtonStyle === "NONE") {
54
+ return;
55
+ }
53
56
  return vue.createVNode("div", {
54
57
  "class": this.ns.b("buttons")
55
- }, [vue.createVNode(vue.resolveComponent("el-dropdown"), {
58
+ }, [this.c.model.searchButtonStyle === "SEARCHONLY" ? vue.createVNode(vue.resolveComponent("el-button"), {
59
+ "onClick": () => this.c.onSearchButtonClick()
60
+ }, {
61
+ default: () => [vue.createTextVNode("\u641C\u7D22")]
62
+ }) : vue.createVNode(vue.resolveComponent("el-dropdown"), {
56
63
  "split-button": true,
57
64
  "type": "primary",
58
65
  "onClick": () => this.c.onSearchButtonClick()
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-control-searchform-buttons{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;text-align:right}.ibiz-control-searchform{--ibiz-control-searchform-bg-color:transparent;--ibiz-control-searchform-padding:0 var(--ibiz-spacing-base);display:flex;padding:var(--ibiz-control-searchform-padding);background-color:var(--ibiz-control-searchform-bg-color)}.ibiz-control-searchform>.ibiz-form-page{flex-grow:1}
1
+ @charset "UTF-8";.ibiz-control-searchform-buttons{display:flex;align-items:center;justify-content:flex-end;height:100%;flex-shrink:0;text-align:right}.ibiz-control-searchform{--ibiz-control-searchform-bg-color:transparent;--ibiz-control-searchform-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);display:flex;padding:var(--ibiz-control-searchform-padding);background-color:var(--ibiz-control-searchform-bg-color)}.ibiz-control-searchform>.ibiz-form-page{flex-grow:1}.ibiz-control-searchform.is-btn-bottom{flex-direction:column}
@@ -36,16 +36,19 @@ const GridFieldColumn = /* @__PURE__ */ vue.defineComponent({
36
36
  const CustomHtml = vue.computed(() => {
37
37
  return props.controller.getCustomHtml(props.row);
38
38
  });
39
+ const fieldValue = vue.computed(() => props.row.data[props.controller.model.codeName]);
40
+ const formatValue = vue.computed(() => props.controller.formatValue(fieldValue.value));
39
41
  return {
40
42
  ns,
41
43
  onCellClick,
42
44
  onTextClick,
43
- CustomHtml
45
+ CustomHtml,
46
+ fieldValue,
47
+ formatValue
44
48
  };
45
49
  },
46
50
  render() {
47
51
  const c = this.controller;
48
- const fieldValue = this.row.data[this.controller.model.codeName];
49
52
  let content = null;
50
53
  if (c.isCustomCode) {
51
54
  content = vue.createVNode("span", {
@@ -57,14 +60,14 @@ const GridFieldColumn = /* @__PURE__ */ vue.defineComponent({
57
60
  "class": this.ns.e("text"),
58
61
  "codeListItems": c.codeListItems,
59
62
  "codeList": c.codeList,
60
- "value": fieldValue,
63
+ "value": this.fieldValue,
61
64
  "onClick": this.onTextClick
62
65
  }, null);
63
66
  } else {
64
67
  content = vue.createVNode("span", {
65
68
  "class": this.ns.e("text"),
66
69
  "onClick": this.onTextClick
67
- }, [fieldValue, fieldValue != null && c.model.unitName]);
70
+ }, [this.formatValue, this.fieldValue != null && c.model.unitName]);
68
71
  }
69
72
  return vue.createVNode("div", {
70
73
  "class": [this.ns.b(), c.clickable(this.row) && this.ns.m("clickable")],
@@ -55,6 +55,7 @@ const GridFieldEditColumn = /* @__PURE__ */ vue.defineComponent({
55
55
  };
56
56
  },
57
57
  render() {
58
+ const val = this.row.data[this.fieldName];
58
59
  return vue.createVNode(vue.resolveComponent("iBizGridEditItem"), {
59
60
  ref: "componentRef",
60
61
  required: !this.c.editItem.allowEmpty,
@@ -62,7 +63,7 @@ const GridFieldEditColumn = /* @__PURE__ */ vue.defineComponent({
62
63
  ...this.gridEditItemProps
63
64
  }, {
64
65
  default: () => [this.c.editorProvider && vue.h(vue.resolveComponent(this.c.editorProvider.gridEditor), {
65
- value: this.row.data[this.fieldName],
66
+ value: this.editorProps.readonly ? this.c.formatValue(val) : val,
66
67
  data: this.row.data,
67
68
  controller: this.c.editor,
68
69
  onChange: this.rowDataChange,
@@ -8,44 +8,6 @@ var runtime = require('@ibiz-template/runtime');
8
8
  function _isSlot(s) {
9
9
  return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
10
10
  }
11
- function renderPanelItem(panelItem, c, ins) {
12
- var _a, _b;
13
- if (panelItem.hidden) {
14
- return null;
15
- }
16
- const {
17
- providers,
18
- panelItems
19
- } = c;
20
- const provider = providers[panelItem.id];
21
- if (!provider) {
22
- return vue.createVNode("div", null, [vue.createTextVNode("\u6682\u672A\u652F\u6301\u7684\u9762\u677F\u9879: "), panelItem.id, vue.createTextVNode(" - "), panelItem.itemType]);
23
- }
24
- const component = vue.resolveComponent(provider.component);
25
- let children;
26
- if (panelItem.itemType === "CTRLPOS" && ins.$slots[panelItem.id]) {
27
- children = () => {
28
- return ins.$slots[panelItem.id]();
29
- };
30
- } else if (panelItem.itemType === "TABPANEL" && ((_a = panelItem.panelTabPages) == null ? void 0 : _a.length)) {
31
- children = () => {
32
- return panelItem.panelTabPages.map((child) => {
33
- return renderPanelItem(child, c, ins);
34
- });
35
- };
36
- } else if ((_b = panelItem.panelItems) == null ? void 0 : _b.length) {
37
- children = () => {
38
- return panelItem.panelItems.map((child) => {
39
- return renderPanelItem(child, c, ins);
40
- });
41
- };
42
- }
43
- return vue.h(component, {
44
- modelData: panelItem,
45
- controller: panelItems[panelItem.id],
46
- key: panelItem.id
47
- }, children);
48
- }
49
11
  const ViewLayoutPanelControl = /* @__PURE__ */ vue.defineComponent({
50
12
  name: "IBizViewLayoutPanelControl",
51
13
  props: {
@@ -63,7 +25,9 @@ const ViewLayoutPanelControl = /* @__PURE__ */ vue.defineComponent({
63
25
  },
64
26
  data: Object
65
27
  },
66
- setup(props) {
28
+ setup(props, {
29
+ slots
30
+ }) {
67
31
  const c = vue3Util.useControlController((...args) => new runtime.ViewLayoutPanelController(...args));
68
32
  const ns = vue3Util.useNamespace(`control-${c.model.controlType.toLowerCase()}`);
69
33
  vue.watch(() => {
@@ -83,9 +47,51 @@ const ViewLayoutPanelControl = /* @__PURE__ */ vue.defineComponent({
83
47
  panelItem.state = vue.reactive(panelItem.state);
84
48
  });
85
49
  });
50
+ const renderPanelItem = (panelItem, options) => {
51
+ var _a, _b;
52
+ if (panelItem.hidden) {
53
+ return null;
54
+ }
55
+ const {
56
+ providers,
57
+ panelItems
58
+ } = options || c;
59
+ const provider = providers[panelItem.id];
60
+ if (!provider) {
61
+ return vue.createVNode("div", null, [vue.createTextVNode("\u6682\u672A\u652F\u6301\u7684\u9762\u677F\u9879: "), panelItem.id, vue.createTextVNode(" - "), panelItem.itemType]);
62
+ }
63
+ const component = vue.resolveComponent(provider.component);
64
+ let children;
65
+ if (panelItem.itemType === "CTRLPOS" && slots[panelItem.id]) {
66
+ children = () => {
67
+ return slots[panelItem.id]();
68
+ };
69
+ } else if (panelItem.itemType === "TABPANEL" && ((_a = panelItem.panelTabPages) == null ? void 0 : _a.length)) {
70
+ children = () => {
71
+ return panelItem.panelTabPages.map((child) => {
72
+ return renderPanelItem(child, options);
73
+ });
74
+ };
75
+ } else if (panelItem.itemType === "CONTAINER" && panelItem.predefinedType === "CONTAINER_SINGLEDATA") {
76
+ children = void 0;
77
+ } else if ((_b = panelItem.panelItems) == null ? void 0 : _b.length) {
78
+ children = () => {
79
+ return panelItem.panelItems.map((child) => {
80
+ return renderPanelItem(child, options);
81
+ });
82
+ };
83
+ }
84
+ return vue.h(component, {
85
+ modelData: panelItem,
86
+ controller: panelItems[panelItem.id],
87
+ key: panelItem.id
88
+ }, children);
89
+ };
90
+ vue.provide("renderPanelItem", renderPanelItem);
86
91
  return {
87
92
  c,
88
- ns
93
+ ns,
94
+ renderPanelItem
89
95
  };
90
96
  },
91
97
  render() {
@@ -113,7 +119,7 @@ const ViewLayoutPanelControl = /* @__PURE__ */ vue.defineComponent({
113
119
  return vue.createVNode(vue.resolveComponent("iBizCol"), {
114
120
  "layoutPos": panelItem.layoutPos,
115
121
  "state": subC.state
116
- }, _isSlot(_slot = renderPanelItem(panelItem, this.c, this)) ? _slot : {
122
+ }, _isSlot(_slot = this.renderPanelItem(panelItem)) ? _slot : {
117
123
  default: () => [_slot]
118
124
  });
119
125
  }))];
@@ -19,7 +19,7 @@ const btnContent = (item) => {
19
19
  }
20
20
  if (item.showCaption) {
21
21
  if (item.capLanguageRes) {
22
- const caption = ibiz.i18n.t(item.capLanguageRes.lanResTag, item.capLanguageRes.defaultContent || item.caption);
22
+ const caption = ibiz.i18n.t(item.capLanguageRes.lanResTag, item.caption);
23
23
  result.push(caption);
24
24
  } else if (item.caption) {
25
25
  result.push(item.caption);
@@ -1 +1 @@
1
- .ibiz-control-treeview-node{display:flex;flex-grow:1;flex-shrink:1;align-items:center;min-width:1px;height:100%;line-height:26px}.ibiz-control-treeview-node__icon{margin-right:var(--ibiz-spacing-tight)}.ibiz-control-treeview-node__label{flex-grow:1;flex-shrink:1;min-width:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-control-treeview-node:hover .ibiz-control-treeview-context-menu-trigger{display:inline-block}.ibiz-control-treeview-context-menu-trigger{display:none;flex-shrink:0;width:30px;text-align:center;cursor:pointer}.ibiz-control-treeview-context-menu-trigger__caption-icon{vertical-align:middle}
1
+ .ibiz-control-treeview-node{display:flex;flex-grow:1;flex-shrink:1;align-items:center;min-width:1px;height:100%;line-height:26px}.ibiz-control-treeview-node__icon{min-width:var(--ibiz-spacing-base);margin-right:var(--ibiz-spacing-tight)}.ibiz-control-treeview-node__label{flex-grow:1;flex-shrink:1;min-width:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-control-treeview-node:hover .ibiz-control-treeview-context-menu-trigger{display:inline-block}.ibiz-control-treeview-context-menu-trigger{display:none;flex-shrink:0;width:30px;text-align:center;cursor:pointer}.ibiz-control-treeview-context-menu-trigger__caption-icon{vertical-align:middle}