@ibiz-template/vue3-components 0.1.29-dev.0 → 0.1.30

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 (88) hide show
  1. package/dist/ibiz-markdown-editor-c2e9b659.js +2 -0
  2. package/dist/{ibiz-markdown-editor-a6a79afe.js.map → ibiz-markdown-editor-c2e9b659.js.map} +1 -1
  3. package/dist/index.min.css +1 -1
  4. package/dist/index.system.min.js +4 -4
  5. package/dist/index.system.min.js.map +1 -1
  6. package/es/common/icon/icon.mjs +7 -1
  7. package/es/control/dashboard/dashboard-design/dashboard-design.css +1 -1
  8. package/es/control/dashboard/dashboard-design/dashboard-design.d.ts +2 -0
  9. package/es/control/dashboard/dashboard-design/dashboard-design.mjs +74 -41
  10. package/es/control/dashboard/index.mjs +5 -1
  11. package/es/control/dashboard/portlet/index.d.ts +1 -0
  12. package/es/control/dashboard/portlet/index.mjs +3 -0
  13. package/es/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.css +1 -0
  14. package/es/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.d.ts +52 -0
  15. package/es/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.mjs +128 -0
  16. package/es/control/dashboard/portlet/menu-portlet/index.d.ts +25 -0
  17. package/es/control/dashboard/portlet/menu-portlet/index.mjs +14 -0
  18. package/es/control/dashboard/portlet/menu-portlet/menu-portlet.d.ts +25 -0
  19. package/es/control/dashboard/portlet/menu-portlet/menu-portlet.mjs +48 -0
  20. package/es/control/dashboard/portlet/menu-portlet/menu-portlet.provider.d.ts +14 -0
  21. package/es/control/dashboard/portlet/menu-portlet/menu-portlet.provider.mjs +25 -0
  22. package/es/control/form/form/form.css +1 -1
  23. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  24. package/es/control/form/form-detail/form-tab-panel/form-tab-panel.css +1 -1
  25. package/es/control/grid/grid/grid-control.util.d.ts +23 -3
  26. package/es/control/grid/grid/grid.d.ts +1 -1
  27. package/es/control/grid/grid/index.d.ts +1 -1
  28. package/es/control/index.mjs +3 -0
  29. package/es/control/list/index.d.ts +1 -1
  30. package/es/control/list/list.d.ts +1 -1
  31. package/es/control/panel/panel/panel.mjs +3 -5
  32. package/es/control/panel/view-layout-panel/view-layout-panel.mjs +3 -5
  33. package/es/control/tab-exp-panel/tab-exp-panel.css +1 -1
  34. package/es/control/tree/tree.css +1 -1
  35. package/es/control/tree-grid/index.d.ts +1 -1
  36. package/es/control/tree-grid/tree-grid.d.ts +1 -1
  37. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.css +1 -1
  38. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +18 -6
  39. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +1 -8
  40. package/es/editor/text-box/text-box-editor.controller.d.ts +8 -0
  41. package/es/editor/text-box/text-box-editor.controller.mjs +21 -0
  42. package/es/index.mjs +3 -0
  43. package/es/panel-component/nav-pos/nav-pos.controller.d.ts +28 -0
  44. package/es/panel-component/nav-pos/nav-pos.controller.mjs +62 -4
  45. package/es/panel-component/nav-pos/nav-pos.mjs +1 -1
  46. package/es/panel-component/nav-pos/nav-pos.state.d.ts +9 -0
  47. package/es/panel-component/nav-pos/nav-pos.state.mjs +9 -0
  48. package/es/util/app-modal/app-modal-component.mjs +2 -3
  49. package/es/util/app-modal/modal.css +1 -1
  50. package/es/util/app-popover/app-popover-component.mjs +11 -0
  51. package/es/util/app-popover/popover.css +1 -1
  52. package/es/util/confirm-util/confirm-util.d.ts +1 -0
  53. package/es/util/confirm-util/confirm-util.mjs +26 -4
  54. package/es/view/login-view/login-view.css +1 -1
  55. package/lib/common/icon/icon.cjs +7 -1
  56. package/lib/control/dashboard/dashboard-design/dashboard-design.cjs +73 -40
  57. package/lib/control/dashboard/dashboard-design/dashboard-design.css +1 -1
  58. package/lib/control/dashboard/index.cjs +7 -0
  59. package/lib/control/dashboard/portlet/index.cjs +6 -0
  60. package/lib/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.cjs +130 -0
  61. package/lib/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.css +1 -0
  62. package/lib/control/dashboard/portlet/menu-portlet/index.cjs +21 -0
  63. package/lib/control/dashboard/portlet/menu-portlet/menu-portlet.cjs +50 -0
  64. package/lib/control/dashboard/portlet/menu-portlet/menu-portlet.provider.cjs +27 -0
  65. package/lib/control/form/form/form.css +1 -1
  66. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  67. package/lib/control/form/form-detail/form-tab-panel/form-tab-panel.css +1 -1
  68. package/lib/control/index.cjs +14 -8
  69. package/lib/control/panel/panel/panel.cjs +3 -5
  70. package/lib/control/panel/view-layout-panel/view-layout-panel.cjs +3 -5
  71. package/lib/control/tab-exp-panel/tab-exp-panel.css +1 -1
  72. package/lib/control/tree/tree.css +1 -1
  73. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +18 -6
  74. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.css +1 -1
  75. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +1 -8
  76. package/lib/editor/text-box/text-box-editor.controller.cjs +21 -0
  77. package/lib/index.cjs +68 -62
  78. package/lib/panel-component/nav-pos/nav-pos.cjs +1 -1
  79. package/lib/panel-component/nav-pos/nav-pos.controller.cjs +62 -4
  80. package/lib/panel-component/nav-pos/nav-pos.state.cjs +9 -0
  81. package/lib/util/app-modal/app-modal-component.cjs +2 -3
  82. package/lib/util/app-modal/modal.css +1 -1
  83. package/lib/util/app-popover/app-popover-component.cjs +11 -0
  84. package/lib/util/app-popover/popover.css +1 -1
  85. package/lib/util/confirm-util/confirm-util.cjs +26 -4
  86. package/lib/view/login-view/login-view.css +1 -1
  87. package/package.json +8 -8
  88. package/dist/ibiz-markdown-editor-a6a79afe.js +0 -2
@@ -1 +1 @@
1
- .ibiz-form-tab-panel{width:100%;height:100%;--ibiz-form-tab-panel-font-size:var(--ibiz-font-size-regular);--ibiz-form-tab-panel-header-border-color:var(--ibiz-color-border);--ibiz-form-tab-panel-text-color:var(--ibiz-color-text-2);--ibiz-form-tab-panel-bg-color:transparent;--ibiz-form-tab-panel-hover-text-color:var(--ibiz-color-text-0);--ibiz-form-tab-panel-hover-bg-color:transparent;--ibiz-form-tab-panel-active-text-color:var(--ibiz-color-text-0);--ibiz-form-tab-panel-active-bg-color:transparent;--ibiz-form-tab-panel-active-border-color:var(--ibiz-color-primary)}.ibiz-form-tab-panel>.el-tabs__header.is-top{margin:0}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top{font-size:var(--ibiz-form-tab-panel-font-size);color:var(--ibiz-form-tab-panel-text-color);background-color:var(--ibiz-form-tab-panel-bg-color)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top:hover{color:var(--ibiz-form-tab-panel-hover-text-color);background-color:var(--ibiz-form-tab-panel-hover-bg-color)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top.is-active{color:var(--ibiz-form-tab-panel-active-text-color);background-color:var(--ibiz-form-tab-panel-active-bg-color)}.ibiz-form-tab-panel .el-tabs__nav-wrap::after{background-color:var(--ibiz-form-tab-panel-header-border-color)}.ibiz-form-tab-panel .el-tabs__active-bar{background-color:var(--ibiz-form-tab-panel-active-border-color)}
1
+ .ibiz-form-tab-panel{width:100%;height:100%;--ibiz-form-tab-panel-font-size:var(--ibiz-font-size-header-4);--ibiz-form-tab-panel-header-border-color:var(--ibiz-color-border);--ibiz-form-tab-panel-text-color:var(--ibiz-color-text-2);--ibiz-form-tab-panel-bg-color:transparent;--ibiz-form-tab-panel-hover-text-color:var(--ibiz-color-primary);--ibiz-form-tab-panel-hover-bg-color:transparent;--ibiz-form-tab-panel-active-text-color:var(--ibiz-color-primary);--ibiz-form-tab-panel-active-bg-color:transparent;--ibiz-form-tab-panel-active-border-color:var(--ibiz-color-primary)}.ibiz-form-tab-panel>.el-tabs__header.is-top{margin-bottom:var(--ibiz-spacing-tight)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top{font-size:var(--ibiz-form-tab-panel-font-size);color:var(--ibiz-form-tab-panel-text-color);background-color:var(--ibiz-form-tab-panel-bg-color)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top:hover{color:var(--ibiz-form-tab-panel-hover-text-color);background-color:var(--ibiz-form-tab-panel-hover-bg-color)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top.is-active{color:var(--ibiz-form-tab-panel-active-text-color);background-color:var(--ibiz-form-tab-panel-active-bg-color)}.ibiz-form-tab-panel .el-tabs__nav-wrap::after{background-color:var(--ibiz-form-tab-panel-header-border-color)}.ibiz-form-tab-panel .el-tabs__active-bar{background-color:var(--ibiz-form-tab-panel-active-border-color)}
@@ -1,7 +1,27 @@
1
- import { ControlVO, GridController } from '@ibiz-template/runtime';
2
- import { IDEGridColumn } from '@ibiz/model-core';
1
+ import { ControlVO, GridController, IControlProvider } from '@ibiz-template/runtime';
2
+ import { IDEGrid, IDEGridColumn } from '@ibiz/model-core';
3
3
  import { TableColumnCtx } from 'element-plus';
4
4
  import { Ref } from 'vue';
5
+ /**
6
+ * 表格部件props接口
7
+ *
8
+ * @author zk
9
+ * @date 2023-09-26 06:09:51
10
+ * @export
11
+ * @interface IGridProps
12
+ */
13
+ export interface IGridProps {
14
+ modelData: IDEGrid;
15
+ context: IContext;
16
+ params: IParams;
17
+ provider: IControlProvider;
18
+ mdctrlActiveMode?: number;
19
+ singleSelect?: boolean;
20
+ rowEditOpen?: boolean;
21
+ isSimple: boolean;
22
+ data: Array<IData>;
23
+ loadDefault: boolean;
24
+ }
5
25
  /**
6
26
  * 适配element的table的事件
7
27
  *
@@ -39,7 +59,7 @@ export declare function useAppGridPagination(c: GridController): {
39
59
  onPageSizeChange: (size: number) => void;
40
60
  onPageRefresh: () => void;
41
61
  };
42
- export declare function useAppGridBase(c: GridController, props: IData): {
62
+ export declare function useAppGridBase(c: GridController, props: IGridProps): {
43
63
  tableData: Ref<IData>;
44
64
  renderColumns: Ref<IDEGridColumn[]>;
45
65
  defaultSort: Ref<IData>;
@@ -155,9 +155,9 @@ export declare const GridControl: import("vue").DefineComponent<{
155
155
  };
156
156
  }>>, {
157
157
  params: IParams;
158
- isSimple: boolean;
159
158
  mdctrlActiveMode: number;
160
159
  singleSelect: boolean;
161
160
  rowEditOpen: boolean;
161
+ isSimple: boolean;
162
162
  loadDefault: boolean;
163
163
  }, {}>;
@@ -137,10 +137,10 @@ export declare const IBizGridControl: import("@ibiz-template/vue3-util").TypeWit
137
137
  };
138
138
  }>>, {
139
139
  params: IParams;
140
- isSimple: boolean;
141
140
  mdctrlActiveMode: number;
142
141
  singleSelect: boolean;
143
142
  rowEditOpen: boolean;
143
+ isSimple: boolean;
144
144
  loadDefault: boolean;
145
145
  }, {}>>;
146
146
  export default IBizGridControl;
@@ -91,6 +91,9 @@ export { PortletLayout } from './dashboard/portlet/portlet-layout/portlet-layout
91
91
  export { ViewPortletProvider } from './dashboard/portlet/view-portlet/view-portlet.provider.mjs';
92
92
  export { ViewPortlet } from './dashboard/portlet/view-portlet/view-portlet.mjs';
93
93
  export { IBizViewPortlet } from './dashboard/portlet/view-portlet/index.mjs';
94
+ export { MenuPortletProvider } from './dashboard/portlet/menu-portlet/menu-portlet.provider.mjs';
95
+ export { MenuPortlet } from './dashboard/portlet/menu-portlet/menu-portlet.mjs';
96
+ export { IBizMenuPortlet } from './dashboard/portlet/menu-portlet/index.mjs';
94
97
  export { CalendarProvider } from './calendar/calendar.provider.mjs';
95
98
  export { KanbanProvider } from './kanban/kanban.provider.mjs';
96
99
  export { TreeGridExProvider } from './tree-grid-ex/tree-grid-ex.provider.mjs';
@@ -77,9 +77,9 @@ export declare const IBizListControl: import("@ibiz-template/vue3-util").TypeWit
77
77
  };
78
78
  }>>, {
79
79
  params: IParams;
80
- isSimple: boolean;
81
80
  mdctrlActiveMode: number;
82
81
  singleSelect: boolean;
82
+ isSimple: boolean;
83
83
  loadDefault: boolean;
84
84
  }, {}>>;
85
85
  export default IBizListControl;
@@ -104,8 +104,8 @@ export declare const ListControl: import("vue").DefineComponent<{
104
104
  };
105
105
  }>>, {
106
106
  params: IParams;
107
- isSimple: boolean;
108
107
  mdctrlActiveMode: number;
109
108
  singleSelect: boolean;
109
+ isSimple: boolean;
110
110
  loadDefault: boolean;
111
111
  }, {}>;
@@ -72,11 +72,9 @@ const PanelControl = /* @__PURE__ */ defineComponent({
72
72
  setup(props) {
73
73
  const c = useControlController((...args) => new PanelController(...args));
74
74
  const ns = useNamespace(`control-${c.model.controlType.toLowerCase()}`);
75
- watch(() => {
76
- props.data;
77
- }, () => {
78
- if (props.data) {
79
- c.setInputData(props.data);
75
+ watch(() => props.data, (newVal) => {
76
+ if (newVal) {
77
+ c.setInputData(newVal);
80
78
  c.load();
81
79
  }
82
80
  }, {
@@ -32,11 +32,9 @@ const ViewLayoutPanelControl = /* @__PURE__ */ defineComponent({
32
32
  }) {
33
33
  const c = useControlController((...args) => new ViewLayoutPanelController(...args));
34
34
  const ns = useNamespace(`control-${c.model.controlType.toLowerCase()}`);
35
- watch(() => {
36
- props.data;
37
- }, () => {
38
- if (props.data) {
39
- c.setInputData(props.data);
35
+ watch(() => props.data, (newVal) => {
36
+ if (newVal) {
37
+ c.setInputData(newVal);
40
38
  c.load();
41
39
  }
42
40
  }, {
@@ -1 +1 @@
1
- .ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap{margin:0}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__active-bar{background-color:var(--ibiz-color-primary)}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-2)}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item:hover{color:var(--ibiz-color-text-0)}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-active{color:var(--ibiz-color-primary)}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-top:nth-child(2){padding-left:0}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-top:last-child{padding-right:0}
1
+ .ibiz-control-tabexppanel .el-tabs .el-tabs__header{margin:0}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap{margin:0}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__active-bar{background-color:var(--ibiz-color-primary)}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-2)}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item:hover{color:var(--ibiz-color-text-0)}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-active{color:var(--ibiz-color-primary)}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-top:nth-child(2){padding-left:0}.ibiz-control-tabexppanel .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-top:last-child{padding-right:0}
@@ -1 +1 @@
1
- .ibiz-control-treeview{--ibiz-control-treeview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);padding:var(--ibiz-control-treeview-padding)}.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}
1
+ .ibiz-control-treeview{--ibiz-control-treeview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);padding:var(--ibiz-control-treeview-padding)}.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}.ibiz-control-treeview-context-menu.mx-context-menu{padding:var(--ibiz-spacing-extra-tight) 0}.ibiz-control-treeview-context-menu.mx-context-menu .mx-context-menu-item{padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base)}
@@ -138,10 +138,10 @@ export declare const IBizTreeGridControl: import("@ibiz-template/vue3-util").Typ
138
138
  };
139
139
  }>>, {
140
140
  params: IParams;
141
- isSimple: boolean;
142
141
  mdctrlActiveMode: number;
143
142
  singleSelect: boolean;
144
143
  rowEditOpen: boolean;
144
+ isSimple: boolean;
145
145
  loadDefault: boolean;
146
146
  }, {}>>;
147
147
  export default IBizTreeGridControl;
@@ -154,9 +154,9 @@ export declare const TreeGridControl: import("vue").DefineComponent<{
154
154
  };
155
155
  }>>, {
156
156
  params: IParams;
157
- isSimple: boolean;
158
157
  mdctrlActiveMode: number;
159
158
  singleSelect: boolean;
160
159
  rowEditOpen: boolean;
160
+ isSimple: boolean;
161
161
  loadDefault: boolean;
162
162
  }, {}>;
@@ -1 +1 @@
1
- .ibiz-markdown .ibiz-markdown-cherry{--ibiz-markdown-width:100%;width:var(--ibiz-markdown-width)}.ibiz-markdown .ibiz-markdown-cherry .cherry{width:100%;min-height:600px}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-editor{overflow:visible}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-editor .CodeMirror{overflow:visible}.ibiz-markdown.is-disabled .cherry{min-height:auto}.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 .ibiz-markdown-cherry{--ibiz-markdown-width:100%;--ibiz-markdown-height:600px;width:var(--ibiz-markdown-width)}.ibiz-markdown .ibiz-markdown-cherry .cherry{width:100%;min-height:var(--ibiz-markdown-height)}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-editor{overflow:visible}.ibiz-markdown .ibiz-markdown-cherry .cherry .cherry-editor .CodeMirror{overflow:visible}.ibiz-markdown.is-disabled .cherry{min-height:auto}.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}
@@ -145,17 +145,29 @@ const IBizMarkDown = /* @__PURE__ */ defineComponent({
145
145
  theme.value = newVal;
146
146
  (_a = editor.value) == null ? void 0 : _a.setTheme(theme.value);
147
147
  });
148
- const calcMarkDownMaxWidth = () => {
148
+ const calcMarkDownStyle = () => {
149
149
  if (window.ResizeObserver && markDownBox.value) {
150
- cssVars.value = ns.cssVarBlock({
150
+ const tempCssVars = {
151
151
  width: `${markDownBox.value.offsetWidth}px`
152
- });
152
+ };
153
+ if (typeof c.parent.model.height === "number") {
154
+ Object.assign(tempCssVars, {
155
+ height: `${c.parent.model.height}px`
156
+ });
157
+ }
158
+ cssVars.value = ns.cssVarBlock(tempCssVars);
153
159
  resizeObserver = new ResizeObserver((entries) => {
154
160
  const width = entries[0].contentRect.width;
155
161
  if (width !== lastMarkDownWidth) {
156
- cssVars.value = ns.cssVarBlock({
162
+ const tempCssVars2 = {
157
163
  width: `${entries[0].contentRect.width}px`
158
- });
164
+ };
165
+ if (typeof c.parent.model.height === "number") {
166
+ Object.assign(tempCssVars2, {
167
+ height: `${c.parent.model.height}px`
168
+ });
169
+ }
170
+ cssVars.value = ns.cssVarBlock(tempCssVars2);
159
171
  lastMarkDownWidth = width;
160
172
  }
161
173
  });
@@ -164,7 +176,7 @@ const IBizMarkDown = /* @__PURE__ */ defineComponent({
164
176
  };
165
177
  onMounted(() => {
166
178
  editorInit();
167
- calcMarkDownMaxWidth();
179
+ calcMarkDownStyle();
168
180
  });
169
181
  onUnmounted(() => {
170
182
  editor.value = null;
@@ -1,7 +1,6 @@
1
1
  import { defineComponent, ref, watch, createVNode, resolveComponent } from 'vue';
2
2
  import { getInputNumberProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './ibiz-input-number.css';
4
- import { toNumber } from 'lodash-es';
5
4
 
6
5
  "use strict";
7
6
  const IBizInputNumber = /* @__PURE__ */ defineComponent({
@@ -13,14 +12,8 @@ const IBizInputNumber = /* @__PURE__ */ defineComponent({
13
12
  }) {
14
13
  const ns = useNamespace("input-number");
15
14
  const c = props.controller;
16
- const editorModel = c.model;
17
15
  const currentVal = ref("");
18
- let precision = 0;
19
- if (editorModel.editorParams) {
20
- if (editorModel.editorParams.precision) {
21
- precision = toNumber(editorModel.editorParams.precision);
22
- }
23
- }
16
+ const precision = c.precision || 0;
24
17
  watch(() => props.value, (newVal, oldVal) => {
25
18
  if (newVal !== oldVal) {
26
19
  const number = Number(newVal);
@@ -10,4 +10,12 @@ import { ITextBox } from '@ibiz/model-core';
10
10
  * @extends {EditorController}
11
11
  */
12
12
  export declare class TextBoxEditorController extends EditorController<ITextBox> {
13
+ /**
14
+ * 精度
15
+ * @author lxm
16
+ * @date 2023-09-26 10:22:47
17
+ * @type {number}
18
+ */
19
+ precision?: number;
20
+ protected onInit(): Promise<void>;
13
21
  }
@@ -1,7 +1,28 @@
1
1
  import { EditorController } from '@ibiz-template/runtime';
2
+ import { toNumber } from 'lodash-es';
2
3
 
3
4
  "use strict";
5
+ var __defProp = Object.defineProperty;
6
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
7
+ var __publicField = (obj, key, value) => {
8
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
9
+ return value;
10
+ };
4
11
  class TextBoxEditorController extends EditorController {
12
+ constructor() {
13
+ super(...arguments);
14
+ /**
15
+ * 精度
16
+ * @author lxm
17
+ * @date 2023-09-26 10:22:47
18
+ * @type {number}
19
+ */
20
+ __publicField(this, "precision");
21
+ }
22
+ async onInit() {
23
+ await super.onInit();
24
+ this.precision = this.editorParams.precision ? toNumber(this.editorParams.precision) : this.model.precision;
25
+ }
5
26
  }
6
27
 
7
28
  export { TextBoxEditorController };
package/es/index.mjs CHANGED
@@ -100,6 +100,9 @@ export { PortletLayout } from './control/dashboard/portlet/portlet-layout/portle
100
100
  export { ViewPortletProvider } from './control/dashboard/portlet/view-portlet/view-portlet.provider.mjs';
101
101
  export { ViewPortlet } from './control/dashboard/portlet/view-portlet/view-portlet.mjs';
102
102
  export { IBizViewPortlet } from './control/dashboard/portlet/view-portlet/index.mjs';
103
+ export { MenuPortletProvider } from './control/dashboard/portlet/menu-portlet/menu-portlet.provider.mjs';
104
+ export { MenuPortlet } from './control/dashboard/portlet/menu-portlet/menu-portlet.mjs';
105
+ export { IBizMenuPortlet } from './control/dashboard/portlet/menu-portlet/index.mjs';
103
106
  export { CalendarProvider } from './control/calendar/calendar.provider.mjs';
104
107
  export { KanbanProvider } from './control/kanban/kanban.provider.mjs';
105
108
  export { TreeGridExProvider } from './control/tree-grid-ex/tree-grid-ex.provider.mjs';
@@ -47,6 +47,15 @@ export declare class NavPosController extends PanelItemController<IPanelRawItem>
47
47
  * @type {string[]}
48
48
  */
49
49
  refCtrlKeys: string[];
50
+ /**
51
+ * 自定义补充参数
52
+ *
53
+ * @author zk
54
+ * @date 2023-09-27 03:09:02
55
+ * @type {IData}
56
+ * @memberof NavPosController
57
+ */
58
+ rawItemParams: IData;
50
59
  /**
51
60
  * Route 对象
52
61
  *
@@ -56,6 +65,16 @@ export declare class NavPosController extends PanelItemController<IPanelRawItem>
56
65
  * @memberof NavPosController
57
66
  */
58
67
  get route(): RouteLocationNormalizedLoaded;
68
+ /**
69
+ * 导航项是否缓存
70
+ *
71
+ * @author zk
72
+ * @date 2023-09-27 03:09:49
73
+ * @param {INavViewMsg} navViewMsg
74
+ * @return {*} {boolean}
75
+ * @memberof NavPosController
76
+ */
77
+ getExpItemIsCache(navViewMsg: INavViewMsg): boolean;
59
78
  /**
60
79
  * 设置 Router 对象
61
80
  *
@@ -130,4 +149,13 @@ export declare class NavPosController extends PanelItemController<IPanelRawItem>
130
149
  * @memberof NavPosController
131
150
  */
132
151
  openViewByModel(openViewMsg: INavViewMsg): void;
152
+ /**
153
+ * 处理自定义补充参数 [{key:'name',value:'data'}] => {name:'data'}
154
+ *
155
+ * @author zk
156
+ * @date 2023-09-27 03:09:55
157
+ * @protected
158
+ * @memberof NavPosController
159
+ */
160
+ protected handleRawItemParams(): void;
133
161
  }
@@ -1,4 +1,5 @@
1
1
  import { PanelItemController, Modal, ViewMode, OpenAppViewCommand } from '@ibiz-template/runtime';
2
+ import { notNilEmpty } from 'qx-util';
2
3
  import { NavPosState } from './nav-pos.state.mjs';
3
4
 
4
5
  "use strict";
@@ -39,6 +40,15 @@ class NavPosController extends PanelItemController {
39
40
  * @type {string[]}
40
41
  */
41
42
  __publicField(this, "refCtrlKeys", []);
43
+ /**
44
+ * 自定义补充参数
45
+ *
46
+ * @author zk
47
+ * @date 2023-09-27 03:09:02
48
+ * @type {IData}
49
+ * @memberof NavPosController
50
+ */
51
+ __publicField(this, "rawItemParams", {});
42
52
  }
43
53
  /**
44
54
  * Route 对象
@@ -51,6 +61,24 @@ class NavPosController extends PanelItemController {
51
61
  get route() {
52
62
  return this.router.currentRoute.value;
53
63
  }
64
+ /**
65
+ * 导航项是否缓存
66
+ *
67
+ * @author zk
68
+ * @date 2023-09-27 03:09:49
69
+ * @param {INavViewMsg} navViewMsg
70
+ * @return {*} {boolean}
71
+ * @memberof NavPosController
72
+ */
73
+ getExpItemIsCache(navViewMsg) {
74
+ if (this.rawItemParams.expcache === "CACHE") {
75
+ return true;
76
+ }
77
+ if (this.rawItemParams.expcache === "NO_CACHE") {
78
+ return false;
79
+ }
80
+ return navViewMsg.isCache;
81
+ }
54
82
  /**
55
83
  * 设置 Router 对象
56
84
  *
@@ -63,6 +91,7 @@ class NavPosController extends PanelItemController {
63
91
  async onInit() {
64
92
  var _a;
65
93
  await super.onInit();
94
+ this.handleRawItemParams();
66
95
  if ((_a = this.model.rawItem) == null ? void 0 : _a.rawItemParams) {
67
96
  this.model.rawItem.rawItemParams.find((item) => {
68
97
  if (item.key === "REFCTRL" && item.value) {
@@ -79,6 +108,15 @@ class NavPosController extends PanelItemController {
79
108
  this.openView(triggerEvent.navViewMsg);
80
109
  }
81
110
  });
111
+ const expRoute = this.panel.view.params.expmode;
112
+ if (expRoute === "ROUTE" && this.routeDepth) {
113
+ this.state.routeOpen = true;
114
+ } else if (expRoute === "NO_ROUTE") {
115
+ this.state.routeOpen = false;
116
+ } else {
117
+ this.state.routeOpen = !!this.routeDepth;
118
+ }
119
+ delete this.panel.view.params.expmode;
82
120
  }
83
121
  /**
84
122
  * 创建导航占位状态对象
@@ -128,7 +166,7 @@ class NavPosController extends PanelItemController {
128
166
  );
129
167
  } else {
130
168
  this.state.navViewMsgs[navViewMsg.key] = navViewMsg;
131
- if (ibiz.config.view.enableExpCache) {
169
+ if (this.getExpItemIsCache(navViewMsg)) {
132
170
  this.state.cacheKeys.push(navViewMsg.key);
133
171
  }
134
172
  this.viewModals[navViewMsg.key] = new Modal({
@@ -170,7 +208,7 @@ class NavPosController extends PanelItemController {
170
208
  this.state.currentKey = openViewMsg.key;
171
209
  return;
172
210
  }
173
- if (this.routeDepth) {
211
+ if (this.routeDepth && this.state.routeOpen) {
174
212
  this.openViewByPath(openViewMsg);
175
213
  } else {
176
214
  this.openViewByModel(openViewMsg);
@@ -190,13 +228,13 @@ class NavPosController extends PanelItemController {
190
228
  this.state.navViewMsgs[this.curNavViewMsg.key].fullPath = this.route.fullPath;
191
229
  return;
192
230
  }
193
- if (this.state.cache && this.state.navViewMsgs[openViewMsg.key].fullPath) {
231
+ if (this.state.navViewMsgs[openViewMsg.key].fullPath && this.getExpItemIsCache(openViewMsg)) {
194
232
  this.router.push(this.state.navViewMsgs[openViewMsg.key].fullPath);
195
233
  } else {
196
234
  const tempContext = Object.assign(openViewMsg.context.clone(), {
197
235
  toRouteDepth: this.routeDepth + 1
198
236
  });
199
- if (ibiz.config.view.enableExpCache) {
237
+ if (this.getExpItemIsCache(openViewMsg)) {
200
238
  this.state.cacheKeys.push(openViewMsg.key);
201
239
  }
202
240
  ibiz.commands.execute(
@@ -218,6 +256,26 @@ class NavPosController extends PanelItemController {
218
256
  this.setNavViewMsgs(openViewMsg);
219
257
  this.state.currentKey = openViewMsg.key;
220
258
  }
259
+ /**
260
+ * 处理自定义补充参数 [{key:'name',value:'data'}] => {name:'data'}
261
+ *
262
+ * @author zk
263
+ * @date 2023-09-27 03:09:55
264
+ * @protected
265
+ * @memberof NavPosController
266
+ */
267
+ handleRawItemParams() {
268
+ var _a;
269
+ let params = {};
270
+ const rawItemParams = (_a = this.model.rawItem) == null ? void 0 : _a.rawItemParams;
271
+ if (notNilEmpty(rawItemParams)) {
272
+ params = rawItemParams.reduce((param, item) => {
273
+ param[item.key.toLowerCase()] = item.value;
274
+ return param;
275
+ }, {});
276
+ }
277
+ Object.assign(this.rawItemParams, params);
278
+ }
221
279
  }
222
280
 
223
281
  export { NavPosController };
@@ -58,7 +58,7 @@ const NavPos = /* @__PURE__ */ defineComponent({
58
58
  cache
59
59
  } = state;
60
60
  let content = null;
61
- if (this.c.routeDepth) {
61
+ if (state.routeOpen) {
62
62
  content = createVNode(resolveComponent("iBizRouterView"), {
63
63
  "manualKey": currentKey,
64
64
  "modal": viewModals[currentKey],
@@ -14,6 +14,15 @@ export declare class NavPosState extends PanelItemState {
14
14
  * @memberof NavPosState
15
15
  */
16
16
  cache: boolean;
17
+ /**
18
+ * 是否是路由打开
19
+ *
20
+ * @author zk
21
+ * @date 2023-09-26 04:09:23
22
+ * @type {boolean}
23
+ * @memberof NavPosState
24
+ */
25
+ routeOpen: boolean;
17
26
  /**
18
27
  * 当前导航视图标识
19
28
  * @author lxm
@@ -17,6 +17,15 @@ class NavPosState extends PanelItemState {
17
17
  * @memberof NavPosState
18
18
  */
19
19
  __publicField(this, "cache", true);
20
+ /**
21
+ * 是否是路由打开
22
+ *
23
+ * @author zk
24
+ * @date 2023-09-26 04:09:23
25
+ * @type {boolean}
26
+ * @memberof NavPosState
27
+ */
28
+ __publicField(this, "routeOpen", true);
20
29
  /**
21
30
  * 当前导航视图标识
22
31
  * @author lxm
@@ -23,9 +23,7 @@ const AppModalComponent = /* @__PURE__ */ defineComponent({
23
23
  zIndex
24
24
  } = useUIStore();
25
25
  const modalZIndex = zIndex.increment();
26
- const customStyle = reactive({
27
- [ns.cssVarBlockName("z-index")]: modalZIndex
28
- });
26
+ const customStyle = reactive({});
29
27
  const {
30
28
  width,
31
29
  height
@@ -86,6 +84,7 @@ const AppModalComponent = /* @__PURE__ */ defineComponent({
86
84
  "align-center": true,
87
85
  "class": [this.ns.b(), this.options.placement && this.ns.m(this.options.placement), this.options.modalClass],
88
86
  "style": this.customStyle,
87
+ "z-index": this.modalZIndex,
89
88
  "onClosed": this.onClosed,
90
89
  "before-close": this.onBeforeClose
91
90
  }, {
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-modal{--ibiz-modal-z-index:var(--ibiz-z-index-modal)}.ibiz-modal.el-dialog{z-index:var(--ibiz-modal-z-index)!important;overflow:visible}.ibiz-modal .el-dialog__header{position:relative;padding:0}.ibiz-modal .el-dialog__body{height:100%;padding:0}.ibiz-modal .el-dialog__headerbtn{top:-40px;right:-60px;border:2px solid var(--ibiz-color-white);border-radius:50%;display:flex;align-items:center;justify-content:center}.ibiz-modal .el-dialog__headerbtn .el-dialog__close{font-size:var(--ibiz-font-size-header-4);color:var(--ibiz-color-white)}
1
+ @charset "UTF-8";.ibiz-modal{--ibiz-modal-z-index:var(--ibiz-z-index-modal)}.ibiz-modal.el-dialog{overflow:visible}.ibiz-modal .el-dialog__header{position:relative;padding:0}.ibiz-modal .el-dialog__body{height:100%;padding:0}.ibiz-modal .el-dialog__headerbtn{top:-40px;right:-60px;border:2px solid var(--ibiz-color-white);border-radius:50%;display:flex;align-items:center;justify-content:center}.ibiz-modal .el-dialog__headerbtn .el-dialog__close{font-size:var(--ibiz-font-size-header-4);color:var(--ibiz-color-white)}
@@ -4,6 +4,8 @@ import { Modal, ViewMode } from '@ibiz-template/runtime';
4
4
  import { useNamespace } from '@ibiz-template/vue3-util';
5
5
  import './popover.css';
6
6
  import { OverlayPopoverContainer } from '../overlay-popover-container/overlay-popover-container.mjs';
7
+ import '../store/index.mjs';
8
+ import { useUIStore } from '../store/ui-store/ui-store.mjs';
7
9
 
8
10
  "use strict";
9
11
  async function computePos(element, el, arrEl, opts) {
@@ -67,6 +69,10 @@ const AppPopoverComponent = /* @__PURE__ */ defineComponent({
67
69
  const autoClose = computed(() => {
68
70
  return props.opts.autoClose === true && isHover.value === false;
69
71
  });
72
+ const {
73
+ zIndex
74
+ } = useUIStore();
75
+ const popoverZIndex = zIndex.increment();
70
76
  function onMouseenter(e) {
71
77
  e.stopPropagation();
72
78
  isHover.value = true;
@@ -79,6 +85,7 @@ const AppPopoverComponent = /* @__PURE__ */ defineComponent({
79
85
  mode: ViewMode.POPOVER,
80
86
  viewUsage: 2,
81
87
  dismiss: (data) => {
88
+ zIndex.decrement();
82
89
  ctx.emit("dismiss", data);
83
90
  }
84
91
  });
@@ -133,6 +140,7 @@ const AppPopoverComponent = /* @__PURE__ */ defineComponent({
133
140
  isShow,
134
141
  isHover,
135
142
  modal,
143
+ popoverZIndex,
136
144
  present,
137
145
  dismiss,
138
146
  onMouseenter,
@@ -144,6 +152,9 @@ const AppPopoverComponent = /* @__PURE__ */ defineComponent({
144
152
  return createVNode("div", {
145
153
  "class": [this.ns.b(), this.ns.is("show", this.isShow), this.ns.is("hover", this.isHover)],
146
154
  "ref": "el",
155
+ "style": {
156
+ zIndex: this.popoverZIndex
157
+ },
147
158
  "onMouseenter": this.onMouseenter,
148
159
  "onMouseleave": this.onMouseleave
149
160
  }, [!this.opts.noArrow && createVNode("div", {
@@ -1 +1 @@
1
- .ibiz-popover{position:absolute;top:0;left:0;z-index:1;display:none;width:-moz-max-content;width:max-content;padding:calc(var(--ibiz-padding)/ 2);background-color:var(--ibiz-bg-color);border:var(--ibiz-border);border-radius:var(--ibiz-border-radius-base)}.ibiz-popover__arrow{position:absolute;width:8px;height:8px;background:var(--ibiz-bg-color);transform:rotate(45deg)}.ibiz-popover.is-show{display:block}
1
+ .ibiz-popover{position:absolute;top:0;left:0;z-index:1;display:none;width:-moz-max-content;width:max-content;background-color:var(--ibiz-color-bg-2);border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-medium)}.ibiz-popover__arrow{position:absolute;width:8px;height:8px;background:var(--ibiz-color-bg-2);transform:rotate(45deg)}.ibiz-popover.is-show{display:block}
@@ -9,6 +9,7 @@ import { IConfirmUtil, ConfirmParams } from '@ibiz-template/runtime';
9
9
  * @implements {IConfirmUtil}
10
10
  */
11
11
  export declare class ConfirmUtil implements IConfirmUtil {
12
+ private ns;
12
13
  info(params: ConfirmParams): Promise<boolean>;
13
14
  success(params: ConfirmParams): Promise<boolean>;
14
15
  warning(params: ConfirmParams): Promise<boolean>;