@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
@@ -0,0 +1,218 @@
1
+ import { isVNode, defineComponent, inject, ref, getCurrentInstance, computed, unref, onMounted, onUnmounted, createVNode, resolveComponent, createTextVNode } from 'vue';
2
+ import { useNamespace } from '@ibiz-template/vue3-util';
3
+ import './devtool-action.css';
4
+ import { useRouter } from 'vue-router';
5
+
6
+ function _isSlot(s) {
7
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
8
+ }
9
+ const DevtoolAction = /* @__PURE__ */ defineComponent({
10
+ name: "IBizDevtoolAction",
11
+ setup() {
12
+ var _a;
13
+ const ns = useNamespace("devtool-action");
14
+ const evt = inject("devtool-evt");
15
+ const items = ref([]);
16
+ const activeItem = ref(null);
17
+ const isShow = ref(false);
18
+ const height = ref("");
19
+ const activeCollapse = ref(["context", "params"]);
20
+ const router = useRouter();
21
+ const instance = (_a = getCurrentInstance()) == null ? void 0 : _a.proxy;
22
+ router.afterEach(() => {
23
+ if (instance) {
24
+ activeItem.value = null;
25
+ instance.$forceUpdate();
26
+ }
27
+ });
28
+ const getObjEntriesArray = (obj) => {
29
+ if (!obj) {
30
+ return [];
31
+ }
32
+ return Object.entries(obj).map(([key, value]) => {
33
+ return {
34
+ key,
35
+ value: Object.prototype.toString.call(value) === "[object Object]" ? JSON.stringify(value) : `${value}`
36
+ };
37
+ });
38
+ };
39
+ const contextArray = computed(() => {
40
+ if (!activeItem.value) {
41
+ return [];
42
+ }
43
+ return getObjEntriesArray(activeItem.value.controller.context);
44
+ });
45
+ const paramsArray = computed(() => {
46
+ if (!activeItem.value) {
47
+ return [];
48
+ }
49
+ return getObjEntriesArray(activeItem.value.controller.params);
50
+ });
51
+ const onDataChange = (data) => {
52
+ items.value = [...data.values()];
53
+ };
54
+ const keydownHandle = (e) => {
55
+ if ((e.ctrlKey || e.metaKey) && e.code === "F12") {
56
+ isShow.value = !isShow.value;
57
+ }
58
+ };
59
+ const onItemClick = (item) => {
60
+ var _a2;
61
+ if (item.key === ((_a2 = activeItem.value) == null ? void 0 : _a2.key)) {
62
+ activeItem.value = null;
63
+ } else {
64
+ activeItem.value = item;
65
+ }
66
+ };
67
+ const copy = async (value) => {
68
+ if (!value) {
69
+ return;
70
+ }
71
+ try {
72
+ await ibiz.util.text.copy(value);
73
+ ibiz.message.success("\u62F7\u8D1D\u6210\u529F!");
74
+ } catch (error) {
75
+ ibiz.message.error("\u62F7\u8D1D\u5931\u8D25!");
76
+ }
77
+ };
78
+ const minimize = () => {
79
+ height.value = "44px";
80
+ };
81
+ const expand = () => {
82
+ height.value = "100%";
83
+ };
84
+ const close = () => {
85
+ isShow.value = false;
86
+ };
87
+ const onMouseEnter = (item) => {
88
+ const el = unref(item.dom);
89
+ if (el) {
90
+ el.style.outline = "3px solid #409EFF";
91
+ }
92
+ };
93
+ const onMouseLeave = (item) => {
94
+ const el = unref(item.dom);
95
+ if (el) {
96
+ el.style.outline = "";
97
+ }
98
+ };
99
+ onMounted(() => {
100
+ evt.on("change", onDataChange);
101
+ document.addEventListener("keydown", keydownHandle);
102
+ });
103
+ onUnmounted(() => {
104
+ evt.off("change", onDataChange);
105
+ document.removeEventListener("keydown", keydownHandle);
106
+ });
107
+ return {
108
+ ns,
109
+ items,
110
+ activeItem,
111
+ height,
112
+ isShow,
113
+ activeCollapse,
114
+ contextArray,
115
+ paramsArray,
116
+ onItemClick,
117
+ copy,
118
+ minimize,
119
+ expand,
120
+ close,
121
+ onMouseEnter,
122
+ onMouseLeave
123
+ };
124
+ },
125
+ render() {
126
+ let _slot, _slot2;
127
+ if (!this.isShow) {
128
+ return;
129
+ }
130
+ return createVNode("div", {
131
+ "class": this.ns.b(),
132
+ "style": {
133
+ height: this.height
134
+ }
135
+ }, [this.activeItem ? createVNode("div", {
136
+ "class": this.ns.b("collapse")
137
+ }, [createVNode(resolveComponent("el-collapse"), {
138
+ "modelValue": this.activeCollapse,
139
+ "onUpdate:modelValue": ($event) => this.activeCollapse = $event
140
+ }, {
141
+ default: () => [createVNode(resolveComponent("el-collapse-item"), {
142
+ "title": "\u5E94\u7528\u4E0A\u4E0B\u6587",
143
+ "name": "context"
144
+ }, _isSlot(_slot = this.contextArray.map((item) => createVNode("div", {
145
+ "class": this.ns.b("collapse-item")
146
+ }, [createVNode("div", {
147
+ "class": this.ns.be("collapse-item", "key"),
148
+ "title": item.key,
149
+ "onClick": () => this.copy(item.key)
150
+ }, [item.key]), createVNode("div", {
151
+ "class": this.ns.be("collapse-item", "value"),
152
+ "title": item.value,
153
+ "onClick": () => this.copy(item.value)
154
+ }, [`\uFF1A${item.value}`])]))) ? _slot : {
155
+ default: () => [_slot]
156
+ }), createVNode(resolveComponent("el-collapse-item"), {
157
+ "title": "\u89C6\u56FE\u53C2\u6570",
158
+ "name": "params"
159
+ }, _isSlot(_slot2 = this.paramsArray.map((item) => createVNode("div", {
160
+ "class": this.ns.b("collapse-item")
161
+ }, [createVNode("div", {
162
+ "class": this.ns.be("collapse-item", "key"),
163
+ "title": item.key,
164
+ "onClick": () => this.copy(item.key)
165
+ }, [item.key]), createVNode("div", {
166
+ "class": this.ns.be("collapse-item", "value"),
167
+ "title": item.value,
168
+ "onClick": () => this.copy(item.value)
169
+ }, [`\uFF1A${item.value}`])]))) ? _slot2 : {
170
+ default: () => [_slot2]
171
+ })]
172
+ })]) : null, createVNode("div", {
173
+ "class": this.ns.b("container")
174
+ }, [createVNode("div", {
175
+ "class": this.ns.b("header")
176
+ }, [createVNode("ion-icon", {
177
+ "name": "remove-outline",
178
+ "onClick": this.minimize
179
+ }, null), createVNode("ion-icon", {
180
+ "name": "expand-outline",
181
+ "onClick": this.expand
182
+ }, null), createVNode("ion-icon", {
183
+ "name": "close-outline",
184
+ "onClick": this.close
185
+ }, null)]), createVNode("div", {
186
+ "class": this.ns.b("content")
187
+ }, [this.items.map((item) => {
188
+ var _a;
189
+ if (!item.controller.isActive) {
190
+ return null;
191
+ }
192
+ const {
193
+ caption,
194
+ name
195
+ } = item.controller.model;
196
+ const text = `${caption || ""}\uFF08${name || ""}\uFF09`;
197
+ const type = ((_a = this.activeItem) == null ? void 0 : _a.key) === item.key ? "success" : "";
198
+ return createVNode("div", {
199
+ "key": item.key,
200
+ "class": this.ns.b("item")
201
+ }, [createVNode(resolveComponent("el-tag"), {
202
+ "type": type,
203
+ "class": this.ns.be("item", "text"),
204
+ "title": text,
205
+ "onClick": () => this.onItemClick(item),
206
+ "onMouseenter": () => this.onMouseEnter(item),
207
+ "onMouseleave": () => this.onMouseLeave(item)
208
+ }, _isSlot(text) ? text : {
209
+ default: () => [text]
210
+ }), createVNode("div", {
211
+ "class": this.ns.be("item", "button"),
212
+ "onClick": () => this.copy(name)
213
+ }, [createTextVNode("\u62F7\u8D1D")])]);
214
+ })])])]);
215
+ }
216
+ });
217
+
218
+ export { DevtoolAction };
@@ -0,0 +1,50 @@
1
+ import { Ref } from 'vue';
2
+ import { ViewController } from '@ibiz-template/runtime';
3
+ import { QXEvent } from 'qx-util';
4
+ import { Router } from 'vue-router';
5
+ import { DevtoolEvent } from './interface/devtool-event';
6
+ import { DevtoolView } from './interface/devtool-view';
7
+ export declare class Devtool {
8
+ /**
9
+ * 视图map
10
+ *
11
+ * @author zhanghengfeng
12
+ * @date 2023-08-28 18:08:16
13
+ */
14
+ viewMap: Map<string, DevtoolView>;
15
+ /**
16
+ * 事件中心
17
+ *
18
+ * @author zhanghengfeng
19
+ * @date 2023-08-28 18:08:43
20
+ */
21
+ evt: QXEvent<DevtoolEvent>;
22
+ /**
23
+ * 初始化devtool工具
24
+ *
25
+ * @author zhanghengfeng
26
+ * @date 2023-08-28 18:08:24
27
+ * @param {Router} router
28
+ */
29
+ init(router: Router): void;
30
+ /**
31
+ * 注册视图
32
+ *
33
+ * @author zhanghengfeng
34
+ * @date 2023-08-28 18:08:25
35
+ * @param {string} key
36
+ * @param {ViewController} controller
37
+ * @param {(Ref<HTMLElement | null>)} dom
38
+ */
39
+ registerView(key: string, controller: ViewController, dom: Ref<HTMLElement | null>): void;
40
+ /**
41
+ * 注销视图
42
+ *
43
+ * @author zhanghengfeng
44
+ * @date 2023-08-28 18:08:39
45
+ * @param {string} key
46
+ */
47
+ unRegisterView(key: string): void;
48
+ }
49
+ declare const devtool: Devtool;
50
+ export { devtool };
@@ -0,0 +1,80 @@
1
+ import { createApp } from 'vue';
2
+ import { QXEvent } from 'qx-util';
3
+ import ElementPlus from 'element-plus';
4
+ import zhCn from '../node_modules/.pnpm/element-plus@2.3.9_vue@3.3.4/node_modules/element-plus/dist/locale/zh-cn.mjs';
5
+ import { DevtoolAction } from './devtool-action.mjs';
6
+
7
+ var __defProp = Object.defineProperty;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __publicField = (obj, key, value) => {
10
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
11
+ return value;
12
+ };
13
+ class Devtool {
14
+ constructor() {
15
+ /**
16
+ * 视图map
17
+ *
18
+ * @author zhanghengfeng
19
+ * @date 2023-08-28 18:08:16
20
+ */
21
+ __publicField(this, "viewMap", /* @__PURE__ */ new Map());
22
+ /**
23
+ * 事件中心
24
+ *
25
+ * @author zhanghengfeng
26
+ * @date 2023-08-28 18:08:43
27
+ */
28
+ __publicField(this, "evt", new QXEvent());
29
+ }
30
+ /**
31
+ * 初始化devtool工具
32
+ *
33
+ * @author zhanghengfeng
34
+ * @date 2023-08-28 18:08:24
35
+ * @param {Router} router
36
+ */
37
+ init(router) {
38
+ const devtool2 = document.createElement("div");
39
+ devtool2.classList.add("devtool");
40
+ document.body.append(devtool2);
41
+ const app = createApp(DevtoolAction);
42
+ app.use(router);
43
+ app.use(ElementPlus, {
44
+ locale: zhCn
45
+ });
46
+ app.provide("devtool-evt", this.evt);
47
+ app.mount(devtool2);
48
+ }
49
+ /**
50
+ * 注册视图
51
+ *
52
+ * @author zhanghengfeng
53
+ * @date 2023-08-28 18:08:25
54
+ * @param {string} key
55
+ * @param {ViewController} controller
56
+ * @param {(Ref<HTMLElement | null>)} dom
57
+ */
58
+ registerView(key, controller, dom) {
59
+ this.viewMap.set(key, {
60
+ key,
61
+ controller,
62
+ dom
63
+ });
64
+ this.evt.emit("change", this.viewMap);
65
+ }
66
+ /**
67
+ * 注销视图
68
+ *
69
+ * @author zhanghengfeng
70
+ * @date 2023-08-28 18:08:39
71
+ * @param {string} key
72
+ */
73
+ unRegisterView(key) {
74
+ this.viewMap.delete(key);
75
+ this.evt.emit("change", this.viewMap);
76
+ }
77
+ }
78
+ const devtool = new Devtool();
79
+
80
+ export { Devtool, devtool };
@@ -0,0 +1,12 @@
1
+ import { DevtoolView } from './devtool-view';
2
+ /**
3
+ * devtool事件
4
+ *
5
+ * @author zhanghengfeng
6
+ * @date 2023-08-28 19:08:42
7
+ * @export
8
+ * @interface DevtoolEvent
9
+ */
10
+ export interface DevtoolEvent {
11
+ change: (data: Map<string, DevtoolView>) => void;
12
+ }
@@ -0,0 +1,15 @@
1
+ import { ViewController } from '@ibiz-template/runtime';
2
+ import { Ref } from 'vue';
3
+ /**
4
+ * devtool视图
5
+ *
6
+ * @author zhanghengfeng
7
+ * @date 2023-08-28 19:08:07
8
+ * @export
9
+ * @interface DevtoolView
10
+ */
11
+ export interface DevtoolView {
12
+ key: string;
13
+ controller: ViewController;
14
+ dom: Ref<HTMLElement | null>;
15
+ }
@@ -22,7 +22,7 @@ const IBizCheckbox = /* @__PURE__ */ defineComponent({
22
22
  }
23
23
  const currentVal = computed({
24
24
  get() {
25
- if (props.value === selectValue) {
25
+ if (props.value == selectValue) {
26
26
  return true;
27
27
  }
28
28
  return false;
@@ -1,6 +1,7 @@
1
1
  import { defineComponent, shallowRef, ref, watch, onBeforeUnmount, onMounted, createVNode } from 'vue';
2
2
  import { Toolbar, Editor } from '@wangeditor/editor-for-vue';
3
3
  import { getCookie } from 'qx-util';
4
+ import { isNil } from 'ramda';
4
5
  import { getHtmlProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
5
6
  import { CoreConst } from '@ibiz-template/core';
6
7
  import './wang-editor.css';
@@ -115,10 +116,14 @@ const IBizHtml = /* @__PURE__ */ defineComponent({
115
116
  });
116
117
  const handleCreated = (editor) => {
117
118
  editorRef.value = editor;
119
+ editor.setHtml(valueHtml.value);
118
120
  };
119
121
  const handleChange = (editor) => {
120
122
  const html = editor.getHtml();
121
123
  const emitValue = html === "<p><br></p>" ? "" : html;
124
+ if (emitValue === props.value || emitValue === "" && isNil(props.value)) {
125
+ return;
126
+ }
122
127
  emit("change", emitValue);
123
128
  };
124
129
  const handleDestroyed = (_editor) => {
@@ -1 +1 @@
1
- .ibiz-markdown .cherry-preview--full{border-left:none}.ibiz-markdown .theme__dark,.ibiz-markdown .theme__light{color:var(--ibiz-form-item-text-color)}.ibiz-markdown .cherry-markdown h1 a::before,.ibiz-markdown .cherry-markdown h2 a::before,.ibiz-markdown .cherry-markdown h3 a::before,.ibiz-markdown .cherry-markdown h4 a::before,.ibiz-markdown .cherry-markdown h5 a::before,.ibiz-markdown .cherry-markdown h6 a::before{display:none}
1
+ .ibiz-markdown{min-height:600px}.ibiz-markdown .cherry-preview--full{border-left:none}.ibiz-markdown .theme__dark,.ibiz-markdown .theme__light{color:var(--ibiz-form-item-text-color)}.ibiz-markdown .cherry-markdown h1 a::before,.ibiz-markdown .cherry-markdown h2 a::before,.ibiz-markdown .cherry-markdown h3 a::before,.ibiz-markdown .cherry-markdown h4 a::before,.ibiz-markdown .cherry-markdown h5 a::before,.ibiz-markdown .cherry-markdown h6 a::before{display:none}
@@ -1,7 +1,7 @@
1
1
  import './input.scss';
2
2
  import { TextBoxEditorController } from '../text-box-editor.controller';
3
3
  export declare const IBizInput: import("vue").DefineComponent<{
4
- value: StringConstructor;
4
+ value: (StringConstructor | NumberConstructor)[];
5
5
  controller: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<TextBoxEditorController>, undefined, undefined>;
6
6
  data: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<IData>, undefined, undefined>;
7
7
  disabled: {
@@ -31,7 +31,7 @@ export declare const IBizInput: import("vue").DefineComponent<{
31
31
  blur: () => boolean;
32
32
  focus: () => boolean;
33
33
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
34
- value: StringConstructor;
34
+ value: (StringConstructor | NumberConstructor)[];
35
35
  controller: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<TextBoxEditorController>, undefined, undefined>;
36
36
  data: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<IData>, undefined, undefined>;
37
37
  disabled: {
@@ -40,7 +40,7 @@ const IBizInput = /* @__PURE__ */ defineComponent({
40
40
  if (!newVal) {
41
41
  currentVal.value = "";
42
42
  } else {
43
- currentVal.value = newVal;
43
+ currentVal.value = newVal.toString();
44
44
  }
45
45
  }
46
46
  }, {
package/es/index.d.ts CHANGED
@@ -6,6 +6,7 @@ export * from './editor';
6
6
  export * from './view';
7
7
  export * from './view-engine';
8
8
  export * from './util';
9
+ export { devtool } from './devtool';
9
10
  export { i18n } from './locale';
10
11
  declare const _default: {
11
12
  install: (v: App) => void;
package/es/index.mjs CHANGED
@@ -7,6 +7,7 @@ import { iBizI18n } from './locale/index.mjs';
7
7
  export { i18n } from './locale/index.mjs';
8
8
  export { IBizViewEngine } from './view-engine/index.mjs';
9
9
  import './util/index.mjs';
10
+ export { devtool } from './devtool/index.mjs';
10
11
  import { IBizView } from './view/common/index.mjs';
11
12
  import { IBizPortalView } from './view/portal-view/index.mjs';
12
13
  import { IBizDataViewControl } from './control/data-view/index.mjs';
@@ -152,6 +153,8 @@ export { IBizPanelTabPage } from './panel-component/panel-tab-page/index.mjs';
152
153
  export { SplitContainerProvider } from './panel-component/split-container/split-container.provider.mjs';
153
154
  export { SplitContainerController } from './panel-component/split-container/split-container.controller.mjs';
154
155
  export { IBizSplitContainer } from './panel-component/split-container/index.mjs';
156
+ export { PanelIndexViewSearchProvider } from './panel-component/panel-index-view-search/panel-index-view-search.provider.mjs';
157
+ export { IBizPanelIndexViewSearch } from './panel-component/panel-index-view-search/index.mjs';
155
158
  export { View404 } from './view/404-view/404-view.mjs';
156
159
  export { AppRedirectView } from './view/app-redirect-view/app-redirect-view.mjs';
157
160
  export { ViewProvider } from './view/common/view.provider.mjs';
@@ -0,0 +1,131 @@
1
+ /*! Element Plus v2.3.9 */
2
+
3
+ var zhCn = {
4
+ name: "zh-cn",
5
+ el: {
6
+ colorpicker: {
7
+ confirm: "\u786E\u5B9A",
8
+ clear: "\u6E05\u7A7A"
9
+ },
10
+ datepicker: {
11
+ now: "\u6B64\u523B",
12
+ today: "\u4ECA\u5929",
13
+ cancel: "\u53D6\u6D88",
14
+ clear: "\u6E05\u7A7A",
15
+ confirm: "\u786E\u5B9A",
16
+ selectDate: "\u9009\u62E9\u65E5\u671F",
17
+ selectTime: "\u9009\u62E9\u65F6\u95F4",
18
+ startDate: "\u5F00\u59CB\u65E5\u671F",
19
+ startTime: "\u5F00\u59CB\u65F6\u95F4",
20
+ endDate: "\u7ED3\u675F\u65E5\u671F",
21
+ endTime: "\u7ED3\u675F\u65F6\u95F4",
22
+ prevYear: "\u524D\u4E00\u5E74",
23
+ nextYear: "\u540E\u4E00\u5E74",
24
+ prevMonth: "\u4E0A\u4E2A\u6708",
25
+ nextMonth: "\u4E0B\u4E2A\u6708",
26
+ year: "\u5E74",
27
+ month1: "1 \u6708",
28
+ month2: "2 \u6708",
29
+ month3: "3 \u6708",
30
+ month4: "4 \u6708",
31
+ month5: "5 \u6708",
32
+ month6: "6 \u6708",
33
+ month7: "7 \u6708",
34
+ month8: "8 \u6708",
35
+ month9: "9 \u6708",
36
+ month10: "10 \u6708",
37
+ month11: "11 \u6708",
38
+ month12: "12 \u6708",
39
+ weeks: {
40
+ sun: "\u65E5",
41
+ mon: "\u4E00",
42
+ tue: "\u4E8C",
43
+ wed: "\u4E09",
44
+ thu: "\u56DB",
45
+ fri: "\u4E94",
46
+ sat: "\u516D"
47
+ },
48
+ months: {
49
+ jan: "\u4E00\u6708",
50
+ feb: "\u4E8C\u6708",
51
+ mar: "\u4E09\u6708",
52
+ apr: "\u56DB\u6708",
53
+ may: "\u4E94\u6708",
54
+ jun: "\u516D\u6708",
55
+ jul: "\u4E03\u6708",
56
+ aug: "\u516B\u6708",
57
+ sep: "\u4E5D\u6708",
58
+ oct: "\u5341\u6708",
59
+ nov: "\u5341\u4E00\u6708",
60
+ dec: "\u5341\u4E8C\u6708"
61
+ }
62
+ },
63
+ select: {
64
+ loading: "\u52A0\u8F7D\u4E2D",
65
+ noMatch: "\u65E0\u5339\u914D\u6570\u636E",
66
+ noData: "\u65E0\u6570\u636E",
67
+ placeholder: "\u8BF7\u9009\u62E9"
68
+ },
69
+ cascader: {
70
+ noMatch: "\u65E0\u5339\u914D\u6570\u636E",
71
+ loading: "\u52A0\u8F7D\u4E2D",
72
+ placeholder: "\u8BF7\u9009\u62E9",
73
+ noData: "\u6682\u65E0\u6570\u636E"
74
+ },
75
+ pagination: {
76
+ goto: "\u524D\u5F80",
77
+ pagesize: "\u6761/\u9875",
78
+ total: "\u5171 {total} \u6761",
79
+ pageClassifier: "\u9875",
80
+ page: "\u9875",
81
+ prev: "\u4E0A\u4E00\u9875",
82
+ next: "\u4E0B\u4E00\u9875",
83
+ currentPage: "\u7B2C {pager} \u9875",
84
+ prevPages: "\u5411\u524D {pager} \u9875",
85
+ nextPages: "\u5411\u540E {pager} \u9875",
86
+ deprecationWarning: "\u4F60\u4F7F\u7528\u4E86\u4E00\u4E9B\u5DF2\u88AB\u5E9F\u5F03\u7684\u7528\u6CD5\uFF0C\u8BF7\u53C2\u8003 el-pagination \u7684\u5B98\u65B9\u6587\u6863"
87
+ },
88
+ messagebox: {
89
+ title: "\u63D0\u793A",
90
+ confirm: "\u786E\u5B9A",
91
+ cancel: "\u53D6\u6D88",
92
+ error: "\u8F93\u5165\u7684\u6570\u636E\u4E0D\u5408\u6CD5!"
93
+ },
94
+ upload: {
95
+ deleteTip: "\u6309 delete \u952E\u53EF\u5220\u9664",
96
+ delete: "\u5220\u9664",
97
+ preview: "\u67E5\u770B\u56FE\u7247",
98
+ continue: "\u7EE7\u7EED\u4E0A\u4F20"
99
+ },
100
+ table: {
101
+ emptyText: "\u6682\u65E0\u6570\u636E",
102
+ confirmFilter: "\u7B5B\u9009",
103
+ resetFilter: "\u91CD\u7F6E",
104
+ clearFilter: "\u5168\u90E8",
105
+ sumText: "\u5408\u8BA1"
106
+ },
107
+ tree: {
108
+ emptyText: "\u6682\u65E0\u6570\u636E"
109
+ },
110
+ transfer: {
111
+ noMatch: "\u65E0\u5339\u914D\u6570\u636E",
112
+ noData: "\u65E0\u6570\u636E",
113
+ titles: ["\u5217\u8868 1", "\u5217\u8868 2"],
114
+ filterPlaceholder: "\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9",
115
+ noCheckedFormat: "\u5171 {total} \u9879",
116
+ hasCheckedFormat: "\u5DF2\u9009 {checked}/{total} \u9879"
117
+ },
118
+ image: {
119
+ error: "\u52A0\u8F7D\u5931\u8D25"
120
+ },
121
+ pageHeader: {
122
+ title: "\u8FD4\u56DE"
123
+ },
124
+ popconfirm: {
125
+ confirmButtonText: "\u786E\u5B9A",
126
+ cancelButtonText: "\u53D6\u6D88"
127
+ }
128
+ }
129
+ };
130
+
131
+ export { zhCn as default };
@@ -1 +1 @@
1
- .ibiz-user-info{--ibiz-user-info-padding:var(--ibiz-spacing-base);--ibiz-user-info-color:var(--ibiz-color-text-0);--ibiz-user-info-font-size:var(--ibiz-font-size-header-4);--ibiz-user-info-hover-color:var(--ibiz-color-text-0);--ibiz-user-info-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-user-info-border-radius:var(--ibiz-border-radius-medium);display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%}.ibiz-user-info .el-dropdown{padding:calc(var(--ibiz-user-info-padding)/ 2) var(--ibiz-user-info-padding);cursor:pointer;border-radius:var(--ibiz-user-info-border-radius)}.ibiz-user-info .el-dropdown:hover{color:var(--ibiz-user-info-hover-color);background-color:var(--ibiz-user-info-hover-bg-color)}.ibiz-user-info-avatar{margin-right:10px}.ibiz-user-info-label{display:flex;align-items:center;justify-content:flex-start;font-size:var(--ibiz-user-info-font-size);color:var(--ibiz-user-info-color);outline:0}
1
+ .ibiz-user-info{--ibiz-user-info-padding:0 var(--ibiz-spacing-loose);--ibiz-user-info-color:var(--ibiz-color-text-0);display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%}.ibiz-user-info .el-dropdown{width:100%;padding:var(--ibiz-user-info-padding);cursor:pointer}.ibiz-user-info.is-left .ibiz-user-info__down{position:relative;top:12px}.ibiz-user-info.is-top .ibiz-user-info__down{margin-left:35px}.ibiz-user-info.is-top .ibiz-user-info-avatar{max-width:24px;max-height:24px}.ibiz-user-info-avatar{max-width:44px;max-height:44px;margin-right:10px}.ibiz-user-info-info{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--ibiz-user-info-color)}.ibiz-user-info-name__user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px;font-size:var(--ibiz-font-size-header-6)}.ibiz-user-info-name__person-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px;margin-top:10px;font-size:var(--ibiz-font-size-small)}.ibiz-user-info-label{display:flex;align-items:center;justify-content:flex-start;font-size:var(--ibiz-user-info-font-size);color:var(--ibiz-user-info-color);outline:0}
@@ -13,9 +13,12 @@ export declare const AuthUserinfo: import("vue").DefineComponent<{
13
13
  };
14
14
  }, {
15
15
  ns: import("@ibiz-template/core").Namespace;
16
+ c: PanelItemController<import("@ibiz/model-core").IPanelItem>;
16
17
  srfusername: any;
18
+ srfpersonname: any;
17
19
  router: import("vue-router").Router;
18
20
  isDarkTheme: import("vue").Ref<boolean>;
21
+ menuAlign: import("vue").ComputedRef<string>;
19
22
  handleSwitchChange: (newVal: boolean) => void;
20
23
  }, unknown, {}, {
21
24
  onClick(): Promise<void>;