@ibiz-template/vue3-components 0.7.17-alpha.0 → 0.7.17

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 (50) hide show
  1. package/dist/index-7bnGd6Fk.js +4 -0
  2. package/dist/index-8ZKxthh5.js +1 -0
  3. package/dist/index-EgqQMBU4.js +1 -0
  4. package/dist/index.min.css +1 -1
  5. package/dist/index.system.min.js +1 -1
  6. package/dist/{xlsx-util-GyD7bt4p.js → xlsx-util-e9YRtb2T.js} +1 -1
  7. package/es/common/action-toolbar/action-toolbar.mjs +25 -6
  8. package/es/control/app-menu/app-menu.css +1 -1
  9. package/es/control/app-menu/app-menu.d.ts +4 -0
  10. package/es/control/app-menu/app-menu.mjs +83 -17
  11. package/es/control/app-menu/custom-menu-design/custom-menu-design.css +1 -0
  12. package/es/control/app-menu/custom-menu-design/custom-menu-design.d.ts +43 -0
  13. package/es/control/app-menu/custom-menu-design/custom-menu-design.mjs +280 -0
  14. package/es/control/app-menu/index.d.ts +4 -0
  15. package/es/control/app-menu/index.mjs +2 -0
  16. package/es/control/kanban/kanban.mjs +2 -2
  17. package/es/control/toolbar/toolbar.css +1 -1
  18. package/es/control/toolbar/toolbar.mjs +1 -0
  19. package/es/control/tree/el-tree-util.d.ts +1 -1
  20. package/es/control/tree/index.d.ts +1 -1
  21. package/es/control/tree/tree.d.ts +1 -1
  22. package/es/locale/en/index.d.ts +6 -0
  23. package/es/locale/en/index.mjs +7 -1
  24. package/es/locale/zh-CN/index.d.ts +6 -0
  25. package/es/locale/zh-CN/index.mjs +7 -1
  26. package/es/panel-component/auth-userinfo/auth-userinfo.css +1 -1
  27. package/es/panel-component/auth-userinfo/auth-userinfo.mjs +2 -2
  28. package/es/panel-component/panel-app-title/panel-app-title.controller.mjs +3 -1
  29. package/es/panel-component/panel-app-title/panel-app-title.css +1 -1
  30. package/es/panel-component/panel-app-title/panel-app-title.mjs +42 -22
  31. package/lib/common/action-toolbar/action-toolbar.cjs +25 -6
  32. package/lib/control/app-menu/app-menu.cjs +83 -17
  33. package/lib/control/app-menu/app-menu.css +1 -1
  34. package/lib/control/app-menu/custom-menu-design/custom-menu-design.cjs +282 -0
  35. package/lib/control/app-menu/custom-menu-design/custom-menu-design.css +1 -0
  36. package/lib/control/app-menu/index.cjs +2 -0
  37. package/lib/control/kanban/kanban.cjs +2 -2
  38. package/lib/control/toolbar/toolbar.cjs +1 -0
  39. package/lib/control/toolbar/toolbar.css +1 -1
  40. package/lib/locale/en/index.cjs +7 -1
  41. package/lib/locale/zh-CN/index.cjs +7 -1
  42. package/lib/panel-component/auth-userinfo/auth-userinfo.cjs +2 -2
  43. package/lib/panel-component/auth-userinfo/auth-userinfo.css +1 -1
  44. package/lib/panel-component/panel-app-title/panel-app-title.cjs +42 -22
  45. package/lib/panel-component/panel-app-title/panel-app-title.controller.cjs +3 -1
  46. package/lib/panel-component/panel-app-title/panel-app-title.css +1 -1
  47. package/package.json +5 -5
  48. package/dist/index-PC3JcJ3h.js +0 -4
  49. package/dist/index-d8pCzmlk.js +0 -1
  50. package/dist/index-tSpp-ef8.js +0 -1
@@ -286,7 +286,7 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
286
286
  return createVNode("span", {
287
287
  "class": ns.be("group", "header-right"),
288
288
  "onClick": (event) => stopPropagation(event)
289
- }, [c.enableNew && createVNode(resolveComponent("el-button"), {
289
+ }, [c.enableNew && !c.state.readonly && createVNode(resolveComponent("el-button"), {
290
290
  "class": ns.be("group", "header-new"),
291
291
  "text": true,
292
292
  "circle": true,
@@ -359,7 +359,7 @@ const KanbanControl = /* @__PURE__ */ defineComponent({
359
359
  "modelValue": group.children,
360
360
  "group": c.model.id,
361
361
  "itemKey": "srfkey",
362
- "disabled": disabled.value,
362
+ "disabled": disabled.value || c.state.readonly,
363
363
  "onChange": (evt) => onChange(evt, group.key)
364
364
  }, {
365
365
  item: ({
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-control-toolbar{--ibiz-control-toolbar-item-margin:0 var(--ibiz-spacing-extra-tight);--ibiz-control-toolbar-item-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-toolbar-icon-max-width:var(--ibiz-width-icon-medium);--ibiz-control-toolbar-icon-max-height:var(--ibiz-width-icon-medium);--ibiz-control-toolbar-separator-color:var(--ibiz-color-fill-2);--ibiz-control-toolbar-menu-height:32px;--ibiz-control-toolbar-text-margin:0 0 0 var(--ibiz-spacing-extra-tight);display:flex;align-items:center}.ibiz-control-toolbar__item{display:flex;align-items:center;margin:var(--ibiz-control-toolbar-item-margin);overflow:hidden}.ibiz-control-toolbar__item .el-button{display:flex;align-items:center;justify-content:center;padding:var(--ibiz-control-toolbar-item-padding)}.ibiz-control-toolbar__item .el-button>span{display:flex;align-items:center;justify-content:center;pointer-events:none;font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-toolbar-icon-max-width);height:var(--ibiz-control-toolbar-icon-max-height)}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon .ibiz-icon{display:flex;align-items:center;justify-content:center}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon i{font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon img{display:inline-block;width:100%;height:100%}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon+.ibiz-toolbar-item-text{margin:var(--ibiz-control-toolbar-text-margin)}.ibiz-control-toolbar__item.is-loading .el-button .ibiz-icon{display:none}.ibiz-control-toolbar__item-separator{color:var(--ibiz-control-toolbar-separator-color)}.ibiz-control-toolbar__item-separator+.ibiz-control-toolbar__item-separator,.ibiz-control-toolbar__item-separator:first-child{display:none}.ibiz-control-toolbar__menu.el-menu{height:var(--ibiz-control-toolbar-menu-height);margin:var(--ibiz-control-toolbar-item-margin);border:none}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title{display:flex;align-items:center;justify-content:center;padding:0;font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary);border-bottom:none;border-radius:var(--ibiz-border-radius-small)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-sub-menu__icon-arrow{display:none}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button{display:flex;align-items:center;justify-content:center}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span{display:flex;align-items:center;justify-content:center;font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-toolbar-icon-max-width);height:var(--ibiz-control-toolbar-icon-max-height)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon .ibiz-icon{display:flex;align-items:center;justify-content:center}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon i{font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon img{display:inline-block;width:100%;height:100%}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon+.ibiz-toolbar-item-text{margin:var(--ibiz-control-toolbar-text-margin)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title>span{display:flex;align-items:center;justify-content:center;line-height:1}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title:hover{color:var(--ibiz-color-primary-hover-text);background-color:var(--ibiz-color-primary-hover)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu.is-active .el-sub-menu__title{color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper{--ibiz-control-toolbar-item-margin:0 var(--ibiz-spacing-extra-tight);--ibiz-control-toolbar-item-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-toolbar-icon-max-width:var(--ibiz-width-icon-medium);--ibiz-control-toolbar-icon-max-height:var(--ibiz-width-icon-medium);--ibiz-control-toolbar-separator-color:var(--ibiz-color-fill-2);--ibiz-control-toolbar-menu-height:32px;--ibiz-control-toolbar-text-margin:0 0 0 var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary)}.ibiz-control-toolbar-submenu-popper .el-menu .ibiz-control-toolbar-submenu .el-sub-menu__title{padding:0 10px;font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary)}.ibiz-control-toolbar-submenu-popper .el-menu .ibiz-control-toolbar-submenu .el-sub-menu__title:hover{color:var(--ibiz-color-primary-hover-text);background-color:var(--ibiz-color-primary-hover)}.ibiz-control-toolbar-submenu-popper .el-menu .ibiz-control-toolbar-submenu.is-active .el-sub-menu__title{color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper .el-menu .ibiz-control-toolbar-submenu-rawitem{color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-toolbar-icon-max-width);height:var(--ibiz-control-toolbar-icon-max-height)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon .ibiz-icon{display:flex;align-items:center;justify-content:center}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon i{font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon img{display:inline-block;width:100%;height:100%}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon+.ibiz-toolbar-item-text{margin:var(--ibiz-control-toolbar-text-margin)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item.is-active{color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item:hover{color:var(--ibiz-color-primary-hover-text);background-color:var(--ibiz-color-primary-hover)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .el-button{justify-content:flex-start;width:100%;padding:0;--el-button-active-bg-color:transparent;--el-button-hover-bg-color:transparent;--el-button-bg-color:transparent;--el-mask-color-extra-light:transparent}
1
+ @charset "UTF-8";.ibiz-control-toolbar{--ibiz-control-toolbar-item-margin:0 var(--ibiz-spacing-extra-tight);--ibiz-control-toolbar-item-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-toolbar-icon-max-width:var(--ibiz-width-icon-medium);--ibiz-control-toolbar-icon-max-height:var(--ibiz-width-icon-medium);--ibiz-control-toolbar-separator-color:var(--ibiz-color-fill-2);--ibiz-control-toolbar-menu-height:32px;--ibiz-control-toolbar-text-margin:0 0 0 var(--ibiz-spacing-extra-tight);display:flex;align-items:center}.ibiz-control-toolbar__item{display:flex;align-items:center;margin:var(--ibiz-control-toolbar-item-margin);overflow:hidden}.ibiz-control-toolbar__item .el-button{display:flex;align-items:center;justify-content:center;padding:var(--ibiz-control-toolbar-item-padding)}.ibiz-control-toolbar__item .el-button>span{display:flex;align-items:center;justify-content:center;pointer-events:none;font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-toolbar-icon-max-width);height:var(--ibiz-control-toolbar-icon-max-height)}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon .ibiz-icon{display:flex;align-items:center;justify-content:center}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon i{font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon img{display:inline-block;width:100%;height:100%}.ibiz-control-toolbar__item .el-button>span .ibiz-toolbar-item-icon+.ibiz-toolbar-item-text{margin:var(--ibiz-control-toolbar-text-margin)}.ibiz-control-toolbar__item.is-loading .el-button .ibiz-icon{display:none}.ibiz-control-toolbar__item-separator{color:var(--ibiz-control-toolbar-separator-color)}.ibiz-control-toolbar__item-separator+.ibiz-control-toolbar__item-separator,.ibiz-control-toolbar__item-separator:first-child{display:none}.ibiz-control-toolbar__menu.el-menu{height:var(--ibiz-control-toolbar-menu-height);margin:var(--ibiz-control-toolbar-item-margin);border:none}.ibiz-control-toolbar__menu .el-sub-menu.is-disabled .el-sub-menu__title{opacity:1}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title{display:flex;align-items:center;justify-content:center;padding:0;font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary);border-bottom:none;border-radius:var(--ibiz-border-radius-small)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-sub-menu__icon-arrow{display:none}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button{display:flex;align-items:center;justify-content:center}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span{display:flex;align-items:center;justify-content:center;font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-toolbar-icon-max-width);height:var(--ibiz-control-toolbar-icon-max-height)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon .ibiz-icon{display:flex;align-items:center;justify-content:center}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon i{font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon img{display:inline-block;width:100%;height:100%}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title .el-button>span .ibiz-toolbar-item-icon+.ibiz-toolbar-item-text{margin:var(--ibiz-control-toolbar-text-margin)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title>span{display:flex;align-items:center;justify-content:center;line-height:1}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu .el-sub-menu__title:hover{color:var(--ibiz-color-primary-hover-text);background-color:var(--ibiz-color-primary-hover)}.ibiz-control-toolbar__menu .ibiz-control-toolbar-submenu.is-active .el-sub-menu__title{color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper{--ibiz-control-toolbar-item-margin:0 var(--ibiz-spacing-extra-tight);--ibiz-control-toolbar-item-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-toolbar-icon-max-width:var(--ibiz-width-icon-medium);--ibiz-control-toolbar-icon-max-height:var(--ibiz-width-icon-medium);--ibiz-control-toolbar-separator-color:var(--ibiz-color-fill-2);--ibiz-control-toolbar-menu-height:32px;--ibiz-control-toolbar-text-margin:0 0 0 var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary)}.ibiz-control-toolbar-submenu-popper .el-menu .el-sub-menu.is-disabled .el-sub-menu__title{opacity:1}.ibiz-control-toolbar-submenu-popper .el-menu .ibiz-control-toolbar-submenu .el-sub-menu__title{padding:0 10px;font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary)}.ibiz-control-toolbar-submenu-popper .el-menu .ibiz-control-toolbar-submenu .el-sub-menu__title:hover{color:var(--ibiz-color-primary-hover-text);background-color:var(--ibiz-color-primary-hover)}.ibiz-control-toolbar-submenu-popper .el-menu .ibiz-control-toolbar-submenu.is-active .el-sub-menu__title{color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper .el-menu .ibiz-control-toolbar-submenu-rawitem{color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-toolbar-icon-max-width);height:var(--ibiz-control-toolbar-icon-max-height)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon .ibiz-icon{display:flex;align-items:center;justify-content:center}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon i{font-size:var(--ibiz-font-size-regular)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon img{display:inline-block;width:100%;height:100%}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .ibiz-toolbar-item-icon+.ibiz-toolbar-item-text{margin:var(--ibiz-control-toolbar-text-margin)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item.is-active{color:var(--ibiz-color-primary-text)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item:hover{color:var(--ibiz-color-primary-hover-text);background-color:var(--ibiz-color-primary-hover)}.ibiz-control-toolbar-submenu-popper .el-menu .el-menu-item .el-button{justify-content:flex-start;width:100%;padding:0;--el-button-active-bg-color:transparent;--el-button-hover-bg-color:transparent;--el-button-bg-color:transparent;--el-mask-color-extra-light:transparent}
@@ -99,6 +99,7 @@ const ToolbarControl = /* @__PURE__ */ defineComponent({
99
99
  return createVNode(resolveComponent("el-sub-menu"), {
100
100
  "class": [ns.b("submenu"), ns.em("item", groupButtonStyle.toLowerCase()), calcCssName(item)],
101
101
  "index": item.id,
102
+ "disabled": pdisabled,
102
103
  "title": item.tooltip,
103
104
  "popper-class": [ns.b("submenu-popper"), ns.bm("submenu-popper", toolbarStyle), ns.em("submenu-popper", groupButtonStyle.toLowerCase()), ns.bm("submenu-popper", calcCssName(item))]
104
105
  }, {
@@ -51,11 +51,11 @@ export declare function useElTreeUtil(treeRef: Ref<InstanceType<typeof ElTree> |
51
51
  readonly icon?: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions> | undefined;
52
52
  readonly load?: import("element-plus/es/components/tree/src/tree.type").LoadFunction | undefined;
53
53
  readonly emptyText?: string | undefined;
54
+ readonly renderContent?: Function | undefined;
54
55
  readonly nodeKey?: string | undefined;
55
56
  readonly defaultCheckedKeys?: import("element-plus/es/components/tree/src/tree.type").TreeKey[] | undefined;
56
57
  readonly defaultExpandedKeys?: import("element-plus/es/components/tree/src/tree.type").TreeKey[] | undefined;
57
58
  readonly currentNodeKey?: string | number | undefined;
58
- readonly renderContent?: Function | undefined;
59
59
  readonly allowDrag?: Function | undefined;
60
60
  readonly allowDrop?: Function | undefined;
61
61
  readonly filterNodeMethod?: import("element-plus/es/components/tree/src/tree.type").FilterNodeMethodFunction | undefined;
@@ -74,11 +74,11 @@ export declare const IBizTreeControl: import("@ibiz-template/vue3-util").TypeWit
74
74
  readonly icon?: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions> | undefined;
75
75
  readonly load?: import("element-plus/es/components/tree/src/tree.type").LoadFunction | undefined;
76
76
  readonly emptyText?: string | undefined;
77
+ readonly renderContent?: Function | undefined;
77
78
  readonly nodeKey?: string | undefined;
78
79
  readonly defaultCheckedKeys?: import("element-plus/es/components/tree/src/tree.type").TreeKey[] | undefined;
79
80
  readonly defaultExpandedKeys?: import("element-plus/es/components/tree/src/tree.type").TreeKey[] | undefined;
80
81
  readonly currentNodeKey?: string | number | undefined;
81
- readonly renderContent?: Function | undefined;
82
82
  readonly allowDrag?: Function | undefined;
83
83
  readonly allowDrop?: Function | undefined;
84
84
  readonly filterNodeMethod?: import("element-plus/es/components/tree/src/tree.type").FilterNodeMethodFunction | undefined;
@@ -95,11 +95,11 @@ export declare const TreeControl: import("vue").DefineComponent<{
95
95
  readonly icon?: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions> | undefined;
96
96
  readonly load?: import("element-plus/es/components/tree/src/tree.type").LoadFunction | undefined;
97
97
  readonly emptyText?: string | undefined;
98
+ readonly renderContent?: Function | undefined;
98
99
  readonly nodeKey?: string | undefined;
99
100
  readonly defaultCheckedKeys?: import("element-plus/es/components/tree/src/tree.type").TreeKey[] | undefined;
100
101
  readonly defaultExpandedKeys?: import("element-plus/es/components/tree/src/tree.type").TreeKey[] | undefined;
101
102
  readonly currentNodeKey?: string | number | undefined;
102
- readonly renderContent?: Function | undefined;
103
103
  readonly allowDrag?: Function | undefined;
104
104
  readonly allowDrop?: Function | undefined;
105
105
  readonly filterNodeMethod?: import("element-plus/es/components/tree/src/tree.type").FilterNodeMethodFunction | undefined;
@@ -762,6 +762,12 @@ declare const _default: {
762
762
  noSupportAlign: string;
763
763
  noFoundModel: string;
764
764
  noFoundFunction: string;
765
+ menuSetting: string;
766
+ };
767
+ menuDesign: {
768
+ customMenu: string;
769
+ reset: string;
770
+ save: string;
765
771
  };
766
772
  calendar: {
767
773
  lastYear: string;
@@ -108,7 +108,13 @@ var index = {
108
108
  menu: {
109
109
  noSupportAlign: "The menu direction {align} is not supported temporarily",
110
110
  noFoundModel: "no find the menu item model {menuKey}",
111
- noFoundFunction: "The adapter for {menuKey} does not have a renderText method"
111
+ noFoundFunction: "The adapter for {menuKey} does not have a renderText method",
112
+ menuSetting: "\u83DC\u5355\u8BBE\u7F6E"
113
+ },
114
+ menuDesign: {
115
+ customMenu: "Custom menu",
116
+ reset: "Reset",
117
+ save: "Save"
112
118
  },
113
119
  calendar: {
114
120
  lastYear: "Last year",
@@ -760,6 +760,12 @@ declare const _default: {
760
760
  noSupportAlign: string;
761
761
  noFoundModel: string;
762
762
  noFoundFunction: string;
763
+ menuSetting: string;
764
+ };
765
+ menuDesign: {
766
+ customMenu: string;
767
+ reset: string;
768
+ save: string;
763
769
  };
764
770
  calendar: {
765
771
  lastYear: string;
@@ -108,7 +108,13 @@ var index = {
108
108
  menu: {
109
109
  noSupportAlign: "\u6682\u672A\u652F\u6301\u83DC\u5355\u65B9\u5411\u4E3A {align}",
110
110
  noFoundModel: "\u6CA1\u627E\u5230\u83DC\u5355\u9879\u6A21\u578B{menuKey}",
111
- noFoundFunction: "{menuKey}\u7684\u9002\u914D\u5668\u6CA1\u6709renderText\u65B9\u6CD5"
111
+ noFoundFunction: "{menuKey}\u7684\u9002\u914D\u5668\u6CA1\u6709renderText\u65B9\u6CD5",
112
+ menuSetting: "\u83DC\u5355\u8BBE\u7F6E"
113
+ },
114
+ menuDesign: {
115
+ customMenu: "\u81EA\u5B9A\u4E49\u83DC\u5355",
116
+ reset: "\u6062\u590D\u9ED8\u8BA4",
117
+ save: "\u4FDD\u5B58"
112
118
  },
113
119
  calendar: {
114
120
  lastYear: "\u53BB\u5E74",
@@ -1 +1 @@
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.is-collapse .el-dropdown{padding:0 var(--ibiz-spacing-base-tight)}.ibiz-user-info.is-collapse .ibiz-user-info-avatar{max-width:32px;max-height:32px;margin:0}.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);line-height:1.3}.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);line-height:1.2}.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-left .ibiz-user-info__down.is-collapse{display:none}.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.is-collapse .el-dropdown{padding:0 var(--ibiz-spacing-base-tight)}.ibiz-user-info.is-collapse .ibiz-user-info-avatar{max-width:24px;max-height:24px;margin:0}.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-info.is-collapse{justify-content:center}.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);line-height:1.3}.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);line-height:1.2}.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}
@@ -55,7 +55,7 @@ const AuthUserinfo = /* @__PURE__ */ defineComponent({
55
55
  "class": [this.ns.b(), this.ns.m(this.modelData.id), ...this.controller.containerClass, this.ns.is("left", this.menuAlign === "LEFT"), this.ns.is("top", this.menuAlign === "TOP"), this.ns.is("collapse", this.isCollapse)]
56
56
  }, [createVNode(resolveComponent("el-dropdown"), null, {
57
57
  default: () => createVNode("div", {
58
- "class": this.ns.b("info")
58
+ "class": [this.ns.b("info"), this.ns.is("collapse", this.isCollapse)]
59
59
  }, [createVNode("div", {
60
60
  "class": this.ns.b("label")
61
61
  }, [createVNode(resolveComponent("el-avatar"), {
@@ -68,7 +68,7 @@ const AuthUserinfo = /* @__PURE__ */ defineComponent({
68
68
  }, [this.srfusername]), this.menuAlign === "LEFT" && createVNode("div", {
69
69
  "class": this.ns.be("name", "person-name")
70
70
  }, [this.srfpersonname])])]), createVNode("ion-icon", {
71
- "class": this.ns.e("down"),
71
+ "class": [this.ns.e("down"), this.ns.is("collapse", this.isCollapse)],
72
72
  "name": "chevron-down-outline"
73
73
  }, null)]),
74
74
  dropdown: () => createVNode(resolveComponent("el-dropdown-menu"), null, {
@@ -35,7 +35,9 @@ class PanelAppTitleController extends PanelItemController {
35
35
  if (indexViewModel.title) {
36
36
  document.title = indexViewModel.title;
37
37
  }
38
- if (indexViewModel.appIconPath) {
38
+ if (this.model.sysImage && this.model.sysImage.rawContent) {
39
+ this.state.icon = this.model.sysImage.rawContent;
40
+ } else if (indexViewModel.appIconPath) {
39
41
  this.state.icon = indexViewModel.appIconPath;
40
42
  }
41
43
  if (indexViewModel.appIconPath2) {
@@ -1 +1 @@
1
- .ibiz-panel-app-title{--ibiz-panel-app-title-color:var(--ibiz-color-text-0);--ibiz-panel-app-title-font-size:var(--ibiz-font-size-header-3);--ibiz-panel-app-title-font-weight:var(--ibiz-font-weight-bold);--ibiz-panel-app-title-padding:0 var(--ibiz-spacing-loose);--ibiz-panel-app-title-collapse-padding:0 var(--ibiz-spacing-tight);display:flex;align-items:center;justify-content:center;height:100%;padding:var(--ibiz-panel-app-title-padding);cursor:pointer}.ibiz-panel-app-title__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ibiz-panel-app-title-font-size);font-weight:700;color:var(--ibiz-panel-app-title-color)}.ibiz-panel-app-title__logo{display:flex;align-items:center;justify-content:center;height:100%;padding:0 var(--ibiz-spacing-tight);font-size:40px}.ibiz-panel-app-title__logo img{display:inline-block;width:20px;height:20px}.ibiz-panel-app-title__logo svg{fill:var(--ibiz-panel-app-title-color)}.ibiz-panel-app-title.is-only-img .ibiz-panel-app-title__logo{padding:0}.ibiz-panel-app-title.is-collapse{max-width:100%;padding:var(--ibiz-panel-app-title-collapse-padding)}.ibiz-panel-app-title.is-collapse .ibiz-panel-app-title__collapse-title{width:100%}.ibiz-panel-app-title.is-collapse .ibiz-panel-app-title__caption2{overflow:hidden;font-size:var(--ibiz-font-size-header-4);font-weight:var(--ibiz-panel-app-title-font-weight);text-align:center;white-space:nowrap}.ibiz-panel-app-title.is-collapse .ibiz-panel-app-title__subCaption2{overflow:hidden;font-size:var(--ibiz-font-size-header-5);text-align:center;white-space:nowrap}
1
+ .ibiz-panel-app-title{--ibiz-panel-app-title-color:var(--ibiz-color-text-0);--ibiz-panel-app-title-font-size:var(--ibiz-font-size-header-3);--ibiz-panel-app-title-font-weight:var(--ibiz-font-weight-bold);--ibiz-panel-app-title-padding:0 var(--ibiz-spacing-loose);--ibiz-panel-app-title-collapse-padding:0 var(--ibiz-spacing-tight);display:flex;align-items:center;justify-content:center;height:100%;padding:var(--ibiz-panel-app-title-padding);cursor:pointer}.ibiz-panel-app-title__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ibiz-panel-app-title-font-size);font-weight:700;color:var(--ibiz-panel-app-title-color)}.ibiz-panel-app-title__logo{display:flex;align-items:center;justify-content:center;height:100%;padding:0 var(--ibiz-spacing-tight);font-size:40px}.ibiz-panel-app-title__logo img{display:inline-block;width:auto;height:100%}.ibiz-panel-app-title__logo svg{fill:var(--ibiz-panel-app-title-color)}.ibiz-panel-app-title.is-only-img .ibiz-panel-app-title__logo{padding:0}.ibiz-panel-app-title.is-collapse{max-width:100%;padding:var(--ibiz-panel-app-title-collapse-padding)}.ibiz-panel-app-title.is-collapse .ibiz-panel-app-title__collapse-title{width:100%}.ibiz-panel-app-title.is-collapse .ibiz-panel-app-title__collpase-icon img{width:100%;height:100%}.ibiz-panel-app-title.is-collapse .ibiz-panel-app-title__caption2{overflow:hidden;font-size:var(--ibiz-font-size-header-4);font-weight:var(--ibiz-panel-app-title-font-weight);text-align:center;white-space:nowrap}.ibiz-panel-app-title.is-collapse .ibiz-panel-app-title__subCaption2{overflow:hidden;font-size:var(--ibiz-font-size-header-5);text-align:center;white-space:nowrap}
@@ -64,7 +64,6 @@ const PanelAppTitle = /* @__PURE__ */ defineComponent({
64
64
  render() {
65
65
  const {
66
66
  icon,
67
- icon2,
68
67
  isSvg,
69
68
  caption,
70
69
  caption2,
@@ -75,28 +74,34 @@ const PanelAppTitle = /* @__PURE__ */ defineComponent({
75
74
  const captionNode = createVNode("span", {
76
75
  "class": this.ns.e("title")
77
76
  }, [caption]);
78
- if (icon || icon2) {
79
- if (isSvg) {
80
- iconVNode = createVNode("ion-icon", {
81
- "class": this.ns.e("logo"),
82
- "icon": this.isCollapse ? icon2 : icon
83
- }, null);
84
- } else {
85
- iconVNode = createVNode("span", {
86
- "class": this.ns.e("logo")
87
- }, [createVNode("img", {
88
- "src": this.isCollapse ? icon2 : icon
89
- }, null)]);
90
- }
91
- } else if (this.menuAlign === "LEFT") {
77
+ if (this.menuAlign === "LEFT") {
92
78
  if (this.isCollapse) {
93
- iconVNode = createVNode("div", {
94
- "class": this.ns.e("collapse-title")
95
- }, [createVNode("div", {
96
- "class": this.ns.e("caption2")
97
- }, [caption2]), createVNode("div", {
98
- "class": this.ns.e("subCaption2")
99
- }, [subCaption2])]);
79
+ if (icon) {
80
+ let tempIcon = null;
81
+ if (isSvg) {
82
+ tempIcon = createVNode("ion-icon", {
83
+ "class": this.ns.e("logo"),
84
+ "icon": icon
85
+ }, null);
86
+ } else {
87
+ tempIcon = createVNode("span", {
88
+ "class": this.ns.e("logo")
89
+ }, [createVNode("img", {
90
+ "src": icon
91
+ }, null)]);
92
+ }
93
+ iconVNode = createVNode("div", {
94
+ "class": this.ns.e("collpase-icon")
95
+ }, [tempIcon]);
96
+ } else {
97
+ iconVNode = createVNode("div", {
98
+ "class": this.ns.e("collapse-title")
99
+ }, [createVNode("div", {
100
+ "class": this.ns.e("caption2")
101
+ }, [caption2]), createVNode("div", {
102
+ "class": this.ns.e("subCaption2")
103
+ }, [subCaption2])]);
104
+ }
100
105
  } else {
101
106
  iconVNode = createVNode("span", {
102
107
  "class": this.ns.e("logo")
@@ -128,6 +133,21 @@ const PanelAppTitle = /* @__PURE__ */ defineComponent({
128
133
  "y": "73"
129
134
  }, [subCaption])])])])]);
130
135
  }
136
+ } else if (this.menuAlign === "TOP") {
137
+ if (icon) {
138
+ if (isSvg) {
139
+ iconVNode = createVNode("ion-icon", {
140
+ "class": this.ns.e("logo"),
141
+ "icon": icon
142
+ }, null);
143
+ } else {
144
+ iconVNode = createVNode("span", {
145
+ "class": this.ns.e("logo")
146
+ }, [createVNode("img", {
147
+ "src": icon
148
+ }, null)]);
149
+ }
150
+ }
131
151
  }
132
152
  let content = null;
133
153
  if (this.menuAlign === "LEFT") {
@@ -122,14 +122,24 @@ const IBizActionToolbar = /* @__PURE__ */ vue.defineComponent({
122
122
  return null;
123
123
  });
124
124
  };
125
- if (this.mode === "buttons") {
125
+ const renderGroup = () => {
126
126
  let _slot;
127
- return vue.createVNode("div", {
128
- "class": [this.ns.b(), this.ns.m("buttons")],
129
- "onClick": (e) => e.stopPropagation()
130
- }, [renderActions(this.expandDetails), this.groupDetails.length > 0 && [vue.createVNode(vue.resolveComponent("el-button"), {
127
+ if (this.groupDetails.length === 0) {
128
+ return null;
129
+ }
130
+ const pvisible = this.groupDetails.findIndex((item) => {
131
+ return this.actionsState[item.id].visible === true;
132
+ }) !== -1;
133
+ if (!pvisible) {
134
+ return null;
135
+ }
136
+ const pdisabled = this.groupDetails.findIndex((item) => {
137
+ return this.actionsState[item.id].disabled === false;
138
+ }) === -1;
139
+ return [vue.createVNode(vue.resolveComponent("el-button"), {
131
140
  "size": "small",
132
141
  "text": true,
142
+ "disabled": pdisabled,
133
143
  "ref": "groupButtonRef",
134
144
  "class": [this.ns.e("item"), this.ns.is("expand", this.popoverVisible)]
135
145
  }, {
@@ -149,7 +159,16 @@ const IBizActionToolbar = /* @__PURE__ */ vue.defineComponent({
149
159
  "popper-style": "z-index:".concat(this.popoverIndex)
150
160
  }, _isSlot(_slot = renderActions(this.groupDetails, false)) ? _slot : {
151
161
  default: () => [_slot]
152
- })]]);
162
+ })];
163
+ };
164
+ if (!this.actionsState.visible) {
165
+ return;
166
+ }
167
+ if (this.mode === "buttons") {
168
+ return vue.createVNode("div", {
169
+ "class": [this.ns.b(), this.ns.m("buttons")],
170
+ "onClick": (e) => e.stopPropagation()
171
+ }, [renderActions(this.expandDetails), renderGroup()]);
153
172
  }
154
173
  return vue.createVNode(vue.resolveComponent("el-dropdown"), {
155
174
  "ref": "dropdownRef",
@@ -7,6 +7,7 @@ var qxUtil = require('qx-util');
7
7
  var runtime = require('@ibiz-template/runtime');
8
8
  var vueRouter = require('vue-router');
9
9
  require('./app-menu.css');
10
+ var customMenuDesign = require('./custom-menu-design/custom-menu-design.cjs');
10
11
 
11
12
  "use strict";
12
13
  function _isSlot(s) {
@@ -45,10 +46,47 @@ function renderByProvider(itemId, c) {
45
46
  }
46
47
  return provider.renderText(itemModel, c);
47
48
  }
48
- function renderMenuItem(isFirst, menu, collapse, ns, c, counterData) {
49
+ function findCustomMenu(_key, items) {
50
+ let temp;
51
+ if (items) {
52
+ items.some((item) => {
53
+ if (item.key === _key) {
54
+ temp = item;
55
+ return true;
56
+ }
57
+ if (item.children && item.children.length > 0) {
58
+ temp = findCustomMenu(_key, item.children);
59
+ if (!temp) {
60
+ return false;
61
+ }
62
+ return true;
63
+ }
64
+ return false;
65
+ });
66
+ }
67
+ return temp;
68
+ }
69
+ function getMenuCustomDisabled(_key, items) {
70
+ const target = findCustomMenu(_key, items);
71
+ if (target) {
72
+ return target.disabled;
73
+ }
74
+ return false;
75
+ }
76
+ function getMenuCustomVisible(_key, items) {
77
+ const target = findCustomMenu(_key, items);
78
+ if (target) {
79
+ return target.visible;
80
+ }
81
+ return true;
82
+ }
83
+ function renderMenuItem(isFirst, menu, collapse, ns, c, counterData, saveConfigs) {
49
84
  if (!c.state.menuItemsState[menu.key].visible) {
50
85
  return;
51
86
  }
87
+ if (!getMenuCustomVisible(menu.key, saveConfigs)) {
88
+ return;
89
+ }
52
90
  if (menu.itemType === "MENUITEM") {
53
91
  let content;
54
92
  const provider = c.itemProviders[menu.key];
@@ -71,7 +109,7 @@ function renderMenuItem(isFirst, menu, collapse, ns, c, counterData) {
71
109
  return !(isFirst && collapse) ? vue.createVNode(vue.resolveComponent("el-menu-item"), {
72
110
  "class": ns.e("item"),
73
111
  "index": menu.key,
74
- "disabled": menu.disabled,
112
+ "disabled": menu.disabled || getMenuCustomDisabled(menu.key, saveConfigs),
75
113
  "title": menu.tooltip
76
114
  }, _isSlot(content) ? content : {
77
115
  default: () => [content]
@@ -84,7 +122,7 @@ function renderMenuItem(isFirst, menu, collapse, ns, c, counterData) {
84
122
  default: () => [vue.createVNode(vue.resolveComponent("el-menu-item"), {
85
123
  "class": ns.e("item"),
86
124
  "index": menu.key,
87
- "disabled": menu.disabled
125
+ "disabled": menu.disabled || getMenuCustomDisabled(menu.key, saveConfigs)
88
126
  }, _isSlot(content) ? content : {
89
127
  default: () => [content]
90
128
  })]
@@ -99,20 +137,24 @@ function renderMenuItem(isFirst, menu, collapse, ns, c, counterData) {
99
137
  }, null);
100
138
  }
101
139
  }
102
- function renderSubmenu(isFirst, subMenu, collapse, ns, c, counterData) {
140
+ function renderSubmenu(isFirst, subMenu, collapse, ns, c, counterData, saveConfigs) {
103
141
  if (!c.state.menuItemsState[subMenu.key].visible) {
104
142
  return;
105
143
  }
144
+ if (!getMenuCustomVisible(subMenu.key, saveConfigs)) {
145
+ return;
146
+ }
106
147
  return vue.createVNode(vue.resolveComponent("el-sub-menu"), {
107
148
  "class": ns.b("submenu"),
108
149
  "index": subMenu.key,
150
+ "disabled": getMenuCustomDisabled(subMenu.key, saveConfigs),
109
151
  "popper-class": ns.b("popup-container")
110
152
  }, {
111
153
  default: () => subMenu.children.map((item) => {
112
154
  if (item.children) {
113
- return renderSubmenu(false, item, collapse, ns, c, counterData);
155
+ return renderSubmenu(false, item, collapse, ns, c, counterData, saveConfigs);
114
156
  }
115
- return renderMenuItem(false, item, collapse, ns, c, counterData);
157
+ return renderMenuItem(false, item, collapse, ns, c, counterData, saveConfigs);
116
158
  }),
117
159
  title: () => {
118
160
  const provider = c.itemProviders[subMenu.key];
@@ -165,6 +207,7 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
165
207
  const c = vue3Util.useControlController((...args) => new runtime.AppMenuController(...args));
166
208
  const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
167
209
  const menus = vue.ref(getMenus(c.model.appMenuItems));
210
+ const saveConfigs = vue.ref([]);
168
211
  const defaultActive = vue.ref("");
169
212
  const defaultOpens = vue.ref([]);
170
213
  const route = vueRouter.useRoute();
@@ -199,6 +242,9 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
199
242
  const fn = (data) => {
200
243
  counterData.value = data;
201
244
  };
245
+ c.evt.on("onCreated", async () => {
246
+ saveConfigs.value = c.saveConfigs;
247
+ });
202
248
  c.evt.on("onMounted", async () => {
203
249
  const allItems = c.getAllItems();
204
250
  const defaultActiveMenuItem = allItems.find((item) => {
@@ -251,6 +297,15 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
251
297
  }
252
298
  return false;
253
299
  });
300
+ const enableCustomized = vue.computed(() => {
301
+ return c.model.enableCustomized;
302
+ });
303
+ const configSaves = (saveConfig) => {
304
+ saveConfigs.value = saveConfig;
305
+ };
306
+ const configReset = () => {
307
+ saveConfigs.value = [];
308
+ };
254
309
  return {
255
310
  menus,
256
311
  c,
@@ -261,13 +316,16 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
261
316
  defaultOpens,
262
317
  menuMode,
263
318
  counterData,
264
- isShowCollapse
319
+ saveConfigs,
320
+ configSaves,
321
+ configReset,
322
+ isShowCollapse,
323
+ enableCustomized
265
324
  };
266
325
  },
267
326
  render() {
268
- let _slot;
269
327
  return vue.createVNode(vue.resolveComponent("iBizControlBase"), {
270
- "class": [this.ns.b(), this.ns.m(this.menuMode), this.ns.is("collapse", this.collapse), this.ns.is("show-collapse", this.isShowCollapse)],
328
+ "class": [this.ns.b(), this.ns.m(this.menuMode), this.ns.is("collapse", this.collapse), this.ns.is("show-collapse", this.isShowCollapse), this.ns.is("show-menu-design", this.enableCustomized)],
271
329
  "controller": this.c
272
330
  }, {
273
331
  default: () => [this.c.state.isCreated && vue.createVNode(vue.resolveComponent("el-menu"), {
@@ -281,15 +339,23 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
281
339
  "theme": "light",
282
340
  "mode": this.menuMode,
283
341
  "ellipsis": this.menuMode === "horizontal"
284
- }, _isSlot(_slot = this.menus.map((item) => {
285
- var _a;
286
- if (((_a = item.children) == null ? void 0 : _a.length) > 0) {
287
- return renderSubmenu(true, item, this.collapse, this.ns, this.c, this.counterData);
342
+ }, {
343
+ default: () => {
344
+ return this.menus.map((item) => {
345
+ var _a;
346
+ if (((_a = item.children) == null ? void 0 : _a.length) > 0) {
347
+ return renderSubmenu(true, item, this.collapse, this.ns, this.c, this.counterData, this.saveConfigs);
348
+ }
349
+ return renderMenuItem(true, item, this.collapse, this.ns, this.c, this.counterData, this.saveConfigs);
350
+ });
288
351
  }
289
- return renderMenuItem(true, item, this.collapse, this.ns, this.c, this.counterData);
290
- })) ? _slot : {
291
- default: () => [_slot]
292
- }), this.isShowCollapse && vue.createVNode("div", {
352
+ }), this.enableCustomized && vue.createVNode(customMenuDesign.MenuDesign, {
353
+ "class": [this.ns.b("menu-set"), this.ns.is("collapse", this.collapse), this.ns.is("horizontal", this.c.view.model.mainMenuAlign === "TOP")],
354
+ "controller": this.c,
355
+ "menus": this.menus,
356
+ "onSaved": this.configSaves,
357
+ "onReset": this.configReset
358
+ }, null), this.isShowCollapse && vue.createVNode("div", {
293
359
  "class": [this.ns.b("collapse-icon"), this.ns.is("collapse", this.collapse)],
294
360
  "onClick": () => {
295
361
  this.c.view.call(runtime.ViewCallTag.TOGGLE_COLLAPSE);
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-control-appmenu{position:relative;width:100%;height:100%;--ibiz-control-appmenu-collapse-item-hover-color:var(--ibiz-color-primary);--ibiz-control-appmenu-collapse-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-icon-width:var(--ibiz-width-icon-large);--ibiz-control-appmenu-icon-height:var(--ibiz-width-icon-large);--ibiz-control-appmenu-icon-margin:0 10px 0 0;--ibiz-control-appmenu-collapse-height:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-selected-color:var(--ibiz-color-text-1);--ibiz-control-appmenu-item-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-hover-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-padding:var(--ibiz-spacing-base-tight);--ibiz-control-appmenu-item-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-height:40px;--ibiz-control-appmenu-item-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-horizontal-selected-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-horizontal-hover-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-horizontal-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-horizontal-height:32px;--ibiz-control-appmenu-item-horizontal-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-horizontal-padding:0 var(--ibiz-spacing-base);--ibiz-control-appmenu-item-horizontal-padding-right:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-horizontal-popup-height:40px}.ibiz-control-appmenu>.el-menu{height:100%;padding:0 var(--ibiz-spacing-tight);overflow-y:auto;border-right:0}.ibiz-control-appmenu .el-sub-menu .el-sub-menu__icon-arrow{right:14px;width:12px}.ibiz-control-appmenu .el-sub-menu .el-menu-item{padding:calc(var(--ibiz-control-appmenu-item-padding) * .875) calc(var(--ibiz-control-appmenu-item-padding) * 2.5)}.ibiz-control-appmenu .el-sub-menu .el-sub-menu__title>.ibiz-control-appmenu__counter{right:30px}.ibiz-control-appmenu .el-menu--vertical{width:100%}.ibiz-control-appmenu .el-menu--vertical .el-menu-item,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title{display:flex;align-items:center;justify-content:flex-start;--el-menu-base-level-padding:var(--ibiz-control-appmenu-item-padding);width:100%;height:var(--ibiz-control-appmenu-item-height);font-size:var(--ibiz-control-appmenu-item-font-size);color:var(--ibiz-control-appmenu-item-color);white-space:nowrap;border-radius:var(--ibiz-control-appmenu-item-border-radius)}.ibiz-control-appmenu .el-menu--vertical .el-menu-item.is-active,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-selected-color)!important;background-color:var(--ibiz-control-appmenu-item-selected-bg-color)}.ibiz-control-appmenu .el-menu--vertical .el-menu-item:hover,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-hover-color);background-color:var(--ibiz-control-appmenu-item-hover-bg-color)}.ibiz-control-appmenu .el-menu--vertical .el-divider--horizontal{margin:var(--ibiz-spacing-tight) 0;border-color:var(--ibiz-color-border)}.ibiz-control-appmenu .el-menu--horizontal{align-items:center;height:100%;background-color:transparent;border-bottom:none}.ibiz-control-appmenu .el-menu--horizontal>*+*{margin-left:16px}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title{height:var(--ibiz-control-appmenu-item-horizontal-height);padding:var(--ibiz-control-appmenu-item-horizontal-padding);font-size:var(--ibiz-control-appmenu-item-horizontal-font-size);line-height:var(--ibiz-control-appmenu-item-horizontal-height);color:var(--ibiz-control-appmenu-item-horizontal-color);white-space:nowrap;border:none;border-radius:var(--ibiz-control-appmenu-item-horizontal-border-radius)}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item.is-active,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-horizontal-color)!important;background-color:transparent}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item:hover,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-horizontal-hover-color);background-color:var(--ibiz-control-appmenu-item-horizontal-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item .el-sub-menu__icon-arrow,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title .el-sub-menu__icon-arrow{position:absolute;top:50%;right:16px}.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title{padding-right:var(--ibiz-control-appmenu-item-horizontal-padding-right)}.ibiz-control-appmenu .el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:transparent}.ibiz-control-appmenu .el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--ibiz-control-appmenu-item-horizontal-hover-color);background-color:var(--ibiz-control-appmenu-item-horizontal-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-white)}.ibiz-control-appmenu .el-menu--horizontal .el-divider--vertical{border-color:var(--ibiz-color-border)}.ibiz-control-appmenu__icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-appmenu-icon-width);height:var(--ibiz-control-appmenu-icon-height);margin:var(--ibiz-control-appmenu-icon-margin)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu__icon{margin:0}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu__item{display:flex;align-items:center;justify-content:center;padding:0;margin-bottom:var(--ibiz-spacing-tight)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-tooltip{width:100%}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu{display:block}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu>.el-sub-menu__title{display:flex;align-items:center;justify-content:center;display:flex;align-items:center;justify-content:center;padding:0;margin-bottom:var(--ibiz-spacing-tight);white-space:nowrap;cursor:pointer}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu .ibiz-control-appmenu-submenu__item{padding:0}.ibiz-control-appmenu.is-show-collapse>.el-menu{height:calc(100% - var(--ibiz-control-appmenu-collapse-height))}.ibiz-control-appmenu .ibiz-control-appmenu__counter{position:absolute;top:50%;right:5px;transform:translateY(-50%)}.ibiz-control-appmenu-popup-container.el-menu--popup-container{--ibiz-control-appmenu-collapse-item-hover-color:var(--ibiz-color-primary);--ibiz-control-appmenu-collapse-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-icon-width:var(--ibiz-width-icon-large);--ibiz-control-appmenu-icon-height:var(--ibiz-width-icon-large);--ibiz-control-appmenu-icon-margin:0 10px 0 0;--ibiz-control-appmenu-collapse-height:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-selected-color:var(--ibiz-color-text-1);--ibiz-control-appmenu-item-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-hover-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-padding:var(--ibiz-spacing-base-tight);--ibiz-control-appmenu-item-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-height:40px;--ibiz-control-appmenu-item-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-horizontal-selected-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-horizontal-hover-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-horizontal-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-horizontal-height:32px;--ibiz-control-appmenu-item-horizontal-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-horizontal-padding:0 var(--ibiz-spacing-base);--ibiz-control-appmenu-item-horizontal-padding-right:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-horizontal-popup-height:40px;border:none;box-shadow:var(--ibiz-shadow-elevated)}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup{padding:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-color-primary)}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-menu-item,.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-sub-menu__title{display:flex;align-items:center;justify-content:flex-start;width:100%;height:var(--ibiz-control-appmenu-item-horizontal-popup-height);font-size:var(--ibiz-control-appmenu-item-font-size);color:var(--ibiz-control-appmenu-item-horizontal-color);white-space:nowrap;border-radius:var(--ibiz-control-appmenu-item-horizontal-border-radius)}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-menu-item.is-active,.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:transparent}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-menu-item:hover,.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:var(--ibiz-control-appmenu-item-hover-bg-color)}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-menu-item .el-icon,.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-sub-menu__title .el-icon{display:none}.ibiz-control-appmenu-popup-container .ibiz-control-appmenu__counter{position:absolute;top:50%;right:5px;height:20px;padding:0 6px;line-height:initial;color:#fff;background-color:#f56c6c;border-radius:10px;transform:translateY(-50%)}.ibiz-control-appmenu .ibiz-control-appmenu-collapse-icon{position:absolute;right:var(--ibiz-spacing-base-tight);bottom:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-header-5);cursor:pointer}.ibiz-control-appmenu .ibiz-control-appmenu-collapse-icon.is-collapse{transform:rotate(180deg)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-collapse-icon{right:0;width:100%;text-align:center}
1
+ @charset "UTF-8";.ibiz-control-appmenu{position:relative;width:100%;height:100%;--ibiz-control-appmenu-collapse-item-hover-color:var(--ibiz-color-primary);--ibiz-control-appmenu-collapse-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-icon-width:var(--ibiz-width-icon-large);--ibiz-control-appmenu-icon-height:var(--ibiz-width-icon-large);--ibiz-control-appmenu-icon-margin:0 10px 0 0;--ibiz-control-appmenu-collapse-height:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-selected-color:var(--ibiz-color-text-1);--ibiz-control-appmenu-item-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-hover-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-padding:var(--ibiz-spacing-base-tight);--ibiz-control-appmenu-item-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-height:40px;--ibiz-control-appmenu-item-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-horizontal-selected-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-horizontal-hover-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-horizontal-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-horizontal-height:32px;--ibiz-control-appmenu-item-horizontal-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-horizontal-padding:0 var(--ibiz-spacing-base);--ibiz-control-appmenu-item-horizontal-padding-right:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-horizontal-popup-height:40px}.ibiz-control-appmenu>.el-menu{height:100%;padding:0 var(--ibiz-spacing-tight);overflow-y:auto;border-right:0}.ibiz-control-appmenu .el-sub-menu .el-sub-menu__icon-arrow{right:14px;width:12px}.ibiz-control-appmenu .el-sub-menu .el-menu-item{padding:calc(var(--ibiz-control-appmenu-item-padding) * .875) calc(var(--ibiz-control-appmenu-item-padding) * 2.5)}.ibiz-control-appmenu .el-sub-menu .el-sub-menu__title>.ibiz-control-appmenu__counter{right:30px}.ibiz-control-appmenu .el-menu--vertical{width:100%}.ibiz-control-appmenu .el-menu--vertical .el-menu-item,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title{display:flex;align-items:center;justify-content:flex-start;--el-menu-base-level-padding:var(--ibiz-control-appmenu-item-padding);width:100%;height:var(--ibiz-control-appmenu-item-height);font-size:var(--ibiz-control-appmenu-item-font-size);color:var(--ibiz-control-appmenu-item-color);white-space:nowrap;border-radius:var(--ibiz-control-appmenu-item-border-radius)}.ibiz-control-appmenu .el-menu--vertical .el-menu-item.is-active,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-selected-color)!important;background-color:var(--ibiz-control-appmenu-item-selected-bg-color)}.ibiz-control-appmenu .el-menu--vertical .el-menu-item:hover,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-hover-color);background-color:var(--ibiz-control-appmenu-item-hover-bg-color)}.ibiz-control-appmenu .el-menu--vertical .el-divider--horizontal{margin:var(--ibiz-spacing-tight) 0;border-color:var(--ibiz-color-border)}.ibiz-control-appmenu .el-menu--horizontal{align-items:center;height:100%;background-color:transparent;border-bottom:none}.ibiz-control-appmenu .el-menu--horizontal>*+*{padding-right:16px}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title{height:var(--ibiz-control-appmenu-item-horizontal-height);padding:var(--ibiz-control-appmenu-item-horizontal-padding);font-size:var(--ibiz-control-appmenu-item-horizontal-font-size);line-height:var(--ibiz-control-appmenu-item-horizontal-height);color:var(--ibiz-control-appmenu-item-horizontal-color);white-space:nowrap;border:none;border-radius:var(--ibiz-control-appmenu-item-horizontal-border-radius)}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item.is-active,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-horizontal-color)!important;background-color:transparent}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item:hover,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-horizontal-hover-color);background-color:var(--ibiz-control-appmenu-item-horizontal-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item .el-sub-menu__icon-arrow,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title .el-sub-menu__icon-arrow{position:absolute;top:50%;right:16px}.ibiz-control-appmenu .el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:transparent}.ibiz-control-appmenu .el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--ibiz-control-appmenu-item-horizontal-hover-color);background-color:var(--ibiz-control-appmenu-item-horizontal-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-white)}.ibiz-control-appmenu .el-menu--horizontal .el-divider--vertical{border-color:var(--ibiz-color-border)}.ibiz-control-appmenu__icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-appmenu-icon-width);height:var(--ibiz-control-appmenu-icon-height);margin:var(--ibiz-control-appmenu-icon-margin)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu__icon{margin:0}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu__item{display:flex;align-items:center;justify-content:center;padding:0;margin-bottom:var(--ibiz-spacing-tight)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-tooltip{width:100%}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu{display:block}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu>.el-sub-menu__title{display:flex;align-items:center;justify-content:center;display:flex;align-items:center;justify-content:center;padding:0;margin-bottom:var(--ibiz-spacing-tight);white-space:nowrap;cursor:pointer}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu .ibiz-control-appmenu-submenu__item{padding:0}.ibiz-control-appmenu.is-show-collapse>.el-menu{height:calc(100% - var(--ibiz-control-appmenu-collapse-height))}.ibiz-control-appmenu .ibiz-control-appmenu__counter{position:absolute;top:50%;right:5px;transform:translateY(-50%)}.ibiz-control-appmenu-popup-container.el-menu--popup-container{--ibiz-control-appmenu-collapse-item-hover-color:var(--ibiz-color-primary);--ibiz-control-appmenu-collapse-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-icon-width:var(--ibiz-width-icon-large);--ibiz-control-appmenu-icon-height:var(--ibiz-width-icon-large);--ibiz-control-appmenu-icon-margin:0 10px 0 0;--ibiz-control-appmenu-collapse-height:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-selected-color:var(--ibiz-color-text-1);--ibiz-control-appmenu-item-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-hover-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-padding:var(--ibiz-spacing-base-tight);--ibiz-control-appmenu-item-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-height:40px;--ibiz-control-appmenu-item-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-horizontal-selected-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-horizontal-hover-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-horizontal-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-horizontal-height:32px;--ibiz-control-appmenu-item-horizontal-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-horizontal-padding:0 var(--ibiz-spacing-base);--ibiz-control-appmenu-item-horizontal-padding-right:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-horizontal-popup-height:40px;border:none;box-shadow:var(--ibiz-shadow-elevated)}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup{padding:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-color-primary)}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-menu-item,.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-sub-menu__title{display:flex;align-items:center;justify-content:flex-start;width:100%;height:var(--ibiz-control-appmenu-item-horizontal-popup-height);font-size:var(--ibiz-control-appmenu-item-font-size);color:var(--ibiz-control-appmenu-item-horizontal-color);white-space:nowrap;border-radius:var(--ibiz-control-appmenu-item-horizontal-border-radius)}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-menu-item.is-active,.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:transparent}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-menu-item:hover,.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:var(--ibiz-control-appmenu-item-hover-bg-color)}.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-menu-item .el-icon,.ibiz-control-appmenu-popup-container.el-menu--popup-container .el-menu--popup .el-sub-menu__title .el-icon{display:none}.ibiz-control-appmenu-popup-container .ibiz-control-appmenu__counter{position:absolute;top:50%;right:5px;height:20px;padding:0 6px;line-height:initial;color:#fff;background-color:#f56c6c;border-radius:10px;transform:translateY(-50%)}.ibiz-control-appmenu .ibiz-control-appmenu-collapse-icon{position:absolute;right:var(--ibiz-spacing-base-tight);bottom:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-header-5);cursor:pointer}.ibiz-control-appmenu .ibiz-control-appmenu-collapse-icon.is-collapse{transform:rotate(180deg)}.ibiz-control-appmenu .ibiz-control-appmenu-menu-set{position:absolute;bottom:var(--ibiz-spacing-tight);left:var(--ibiz-spacing-base-tight);font-size:var(--ibiz-font-size-header-5);cursor:pointer}.ibiz-control-appmenu .ibiz-control-appmenu-menu-set.is-horizontal{right:0;bottom:0;left:unset;display:flex;align-items:center;height:100%}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-collapse-icon{right:0;width:100%;text-align:center}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-menu-set{position:absolute;right:var(--ibiz-spacing-base-tight);bottom:calc(var(--ibiz-spacing-tight) + 32px);font-size:var(--ibiz-font-size-header-5);text-align:center;cursor:pointer}.ibiz-control-appmenu.is-collapse.is-show-menu-design>.el-menu{height:calc(100% - var(--ibiz-control-appmenu-collapse-height) - var(--ibiz-control-appmenu-collapse-height))}