@ibiz-template/mob-vue3-components 0.7.41-alpha.22 → 0.7.41-alpha.24
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.
- package/dist/chart-CVnUjHjl.js +2 -0
- package/dist/{chart-j1WkpBhc.js.map → chart-CVnUjHjl.js.map} +1 -1
- package/dist/ibiz-markdown-editor-MwEhH1r_.js +2 -0
- package/dist/ibiz-markdown-editor-MwEhH1r_.js.map +1 -0
- package/dist/index-CopTozpr.js +2 -0
- package/dist/{index-ChdHGLJI.js.map → index-CopTozpr.js.map} +1 -1
- package/dist/index-DV0pS0zU.js +2 -0
- package/dist/{index-Dd7yiMzY.js.map → index-DV0pS0zU.js.map} +1 -1
- package/dist/index-HQsqnjtM.js +2 -0
- package/dist/index-HQsqnjtM.js.map +1 -0
- package/dist/index.min.css +4 -4
- package/dist/index.system.min.js +1 -1
- package/dist/quill-CSDnV3Pb.js +2 -0
- package/dist/{quill-BOA7ZLOz.js.map → quill-CSDnV3Pb.js.map} +1 -1
- package/dist/quill-editor-B7NuxNK7.js +2 -0
- package/dist/quill-editor-B7NuxNK7.js.map +1 -0
- package/dist/quill-editor-preview-CtFf0ZKt.js +2 -0
- package/dist/{quill-editor-preview-DghpeKpg.js.map → quill-editor-preview-CtFf0ZKt.js.map} +1 -1
- package/dist/tree-on8cJom4.js +2 -0
- package/dist/{tree-BTa0bMPr.js.map → tree-on8cJom4.js.map} +1 -1
- package/dist/xlsx-util-DRvvWEVq.js +3 -0
- package/dist/xlsx-util-DRvvWEVq.js.map +1 -0
- package/es/_virtual/index12.mjs +2 -2
- package/es/_virtual/index13.mjs +2 -2
- package/es/common/action-group/action-group.css +1 -1
- package/es/common/action-group/action-group.mjs +44 -43
- package/es/common/button-list/button-list.css +1 -1
- package/es/common/button-list/button-list.mjs +16 -25
- package/es/common/col/col.mjs +1 -1
- package/es/common/cropping/cropping.mjs +5 -5
- package/es/common/date-range-picker/components/range-picker/range-picker.mjs +2 -4
- package/es/common/date-range-picker/components/single-picker/single-picker.mjs +2 -4
- package/es/common/date-range-picker/date-range-picker.mjs +2 -2
- package/es/common/emoji-select/components/emoji-item/emoji-item.mjs +4 -4
- package/es/common/emoji-select/components/emoji-list/emoji-list.mjs +1 -1
- package/es/common/emoji-select/icons/categories.mjs +9 -57
- package/es/common/float-button/float-button.css +1 -1
- package/es/common/float-button/float-button.mjs +12 -7
- package/es/common/fullscreen-header/fullscreen-header.css +1 -1
- package/es/common/keep-alive/keep-alive.mjs +2 -2
- package/es/common/keep-alive/scheduler.mjs +1 -1
- package/es/common/preview-image/preview-image.mjs +4 -4
- package/es/common/rawitem/rawitem.mjs +2 -2
- package/es/common/row/row.mjs +1 -1
- package/es/common/split/split.mjs +9 -9
- package/es/common/split-trigger/split-trigger.mjs +1 -1
- package/es/common/tab-layout/tab-dropdown/tab-dropdown.mjs +1 -1
- package/es/control/app-menu/app-menu.mjs +3 -3
- package/es/control/app-menu/custom-menu-design/custom-menu-design.css +1 -1
- package/es/control/app-menu/custom-menu-design/custom-menu-design.mjs +30 -86
- package/es/control/app-menu/custom-menu-design/menu-design-list/menu-design-list.css +1 -0
- package/es/control/app-menu/custom-menu-design/menu-design-list/menu-design-list.mjs +105 -0
- package/es/control/app-menu/custom-menu-design/menu-design-tree/menu-design-tree.css +1 -0
- package/es/control/app-menu/custom-menu-design/menu-design-tree/menu-design-tree.mjs +124 -0
- package/es/control/app-menu/menu-render-util.mjs +6 -1
- package/es/control/app-menu-icon-view/app-menu-icon-view.mjs +1 -1
- package/es/control/app-menu-icon-view/index.mjs +1 -1
- package/es/control/app-menu-list-view/app-menu-list-view.mjs +1 -1
- package/es/control/app-menu-list-view/index.mjs +1 -1
- package/es/control/calendar/calendar.mjs +6 -6
- package/es/control/caption-bar/caption-bar.mjs +1 -1
- package/es/control/chart/chart.mjs +1 -1
- package/es/control/dashboard/dashboard.mjs +3 -1
- package/es/control/dashboard/portlet/actionbar-portlet/actionbar-portlet.mjs +1 -1
- package/es/control/dashboard/portlet/chart-portlet/chart-portlet.mjs +1 -1
- package/es/control/dashboard/portlet/container-portlet/container-portlet.mjs +1 -1
- package/es/control/dashboard/portlet/html-portlet/html-portlet.mjs +1 -1
- package/es/control/dashboard/portlet/list-portlet/list-portlet.mjs +1 -1
- package/es/control/dashboard/portlet/menu-portlet/menu-portlet.mjs +1 -1
- package/es/control/dashboard/portlet/portlet-layout/portlet-layout.css +1 -1
- package/es/control/dashboard/portlet/portlet-layout/portlet-layout.mjs +4 -4
- package/es/control/dashboard/portlet/rawitem-portlet/rawitem-portlet.mjs +1 -1
- package/es/control/dashboard/portlet/view-portlet/view-portlet.mjs +1 -1
- package/es/control/data-view/data-view.css +1 -1
- package/es/control/data-view/data-view.mjs +7 -7
- package/es/control/drbar/drbar.mjs +1 -1
- package/es/control/drtab/drtab.controller.mjs +1 -1
- package/es/control/drtab/drtab.mjs +1 -1
- package/es/control/form/edit-form/edit-form.mjs +1 -1
- package/es/control/form/form/form.mjs +2 -2
- package/es/control/form/form-detail/form-button/form-button.css +1 -1
- package/es/control/form/form-detail/form-button/form-button.mjs +4 -4
- package/es/control/form/form-detail/form-group-panel/form-group-panel.mjs +1 -1
- package/es/control/form/form-detail/form-item/form-item-container/form-item-container.mjs +1 -1
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.mjs +6 -6
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl.provider.mjs +2 -2
- package/es/control/form/search-form/search-form.mjs +1 -1
- package/es/control/list/list/list.mjs +1 -1
- package/es/control/list/md-ctrl/md-ctrl.css +1 -1
- package/es/control/list/md-ctrl/md-ctrl.mjs +2 -2
- package/es/control/pickup-view-panel/pickup-view-panel.mjs +1 -1
- package/es/control/search-bar/filter-field-select/filter-field-select.mjs +1 -1
- package/es/control/search-bar/filter-mode-select/filter-mode-select.mjs +1 -1
- package/es/control/search-bar/filter-tree/filter-tree.css +1 -1
- package/es/control/search-bar/filter-tree/filter-tree.mjs +1 -1
- package/es/control/search-bar/search-bar.mjs +10 -6
- package/es/control/tab-exp-panel/tab-exp-panel.mjs +1 -1
- package/es/control/toolbar/float-toolbar/float-toolbar.css +1 -1
- package/es/control/toolbar/float-toolbar/float-toolbar.mjs +19 -8
- package/es/control/toolbar/toolbar-group-list/toolbar-group-list.css +1 -1
- package/es/control/toolbar/toolbar-group-list/toolbar-group-list.mjs +26 -12
- package/es/control/toolbar/toolbar-render-util.mjs +122 -48
- package/es/control/toolbar/toolbar.css +1 -1
- package/es/control/toolbar/toolbar.mjs +4 -1
- package/es/control/tree/tree.mjs +9 -9
- package/es/control/tree-exp-bar/tree-exp-bar.mjs +1 -1
- package/es/control/wizard-panel/wizard-panel.mjs +6 -6
- package/es/editor/cascader/ibiz-cascader/ibiz-cascader.mjs +2 -2
- package/es/editor/color-picker/ibiz-color-picker/ibiz-color-picker.mjs +1 -1
- package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +2 -2
- package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs +2 -2
- package/es/editor/data-picker/picker-editor.controller.mjs +1 -1
- package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.css +1 -1
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +7 -7
- package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.mjs +1 -1
- package/es/editor/html/html-editor.controller.mjs +26 -9
- package/es/editor/html/quill-editor/quill-editor.mjs +12 -3
- package/es/editor/html/quill-editor-preview/quill-editor-preview.css +1 -1
- package/es/editor/html/quill-editor-preview/quill-editor-preview.mjs +4 -4
- package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +12 -3
- package/es/editor/markdown/markdown-editor.controller.mjs +23 -3
- package/es/editor/qrcode/ibiz-qrcode/ibiz-qrcode.mjs +1 -1
- package/es/editor/slider/ibiz-slider/ibiz-slider.mjs +2 -2
- package/es/editor/span/span/span.mjs +7 -7
- package/es/editor/span/span-link/span-link.mjs +1 -1
- package/es/editor/stepper/ibiz-stepper/ibiz-stepper.mjs +1 -1
- package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +1 -1
- package/es/editor/text-box/input/input.mjs +4 -4
- package/es/editor/text-box/signature/signature.mjs +59 -19
- package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.css +1 -1
- package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.mjs +1 -1
- package/es/editor/upload/upload-editor.controller.mjs +18 -1
- package/es/editor/upload/use/use-van-upload.mjs +6 -2
- package/es/index.mjs +2 -1
- package/es/locale/en/index.mjs +26 -23
- package/es/locale/zh-CN/index.mjs +3 -0
- package/es/mob-app/App.mjs +10 -1
- package/es/mob-app/components/modal-router-shell/modal-router-shell.mjs +6 -4
- package/es/mob-app/components/router-shell/router-shell.mjs +1 -1
- package/es/mob-app/guard/auth-guard/auth-guard.mjs +2 -2
- package/es/mob-app/guard/auth-guard/dyna-auth-guard.mjs +3 -3
- package/es/mob-app/main.mjs +3 -1
- package/es/mob-app/router/index.mjs +131 -76
- package/es/mob-app/util/unauthorized-handler/unauthorized-handler.mjs +5 -5
- package/es/node_modules/.pnpm/dingtalk-jsapi@3.2.0/node_modules/dingtalk-jsapi/lib/packages/frame-talk-client-pc/index.mjs +1 -1
- package/es/node_modules/.pnpm/dingtalk-jsapi@3.2.0/node_modules/dingtalk-jsapi/lib/sdk/middlewares/index.mjs +1 -1
- package/es/panel-component/async-action/async-action/async-action.mjs +2 -2
- package/es/panel-component/async-action/async-action-preview/async-action-preview.mjs +3 -3
- package/es/panel-component/async-action/async-action-result/async-action-result.mjs +1 -1
- package/es/panel-component/nav-pos-index/nav-pos-index.controller.mjs +2 -2
- package/es/panel-component/panel-app-title/panel-app-title.mjs +2 -2
- package/es/panel-component/panel-button/panel-button.css +1 -1
- package/es/panel-component/panel-carousel/panel-carousel.controller.mjs +1 -1
- package/es/panel-component/panel-video-player/panel-video-player.controller.mjs +2 -2
- package/es/panel-component/split-container/split-container.controller.mjs +1 -1
- package/es/panel-component/user-message/common/internal-message-default/internal-message-default.provider.mjs +1 -1
- package/es/panel-component/user-message/user-message.mjs +1 -1
- package/es/panel-component/user-message/user-message.util.mjs +1 -1
- package/es/panel-component/view-content-panel-container/view-content-panel-container.css +1 -1
- package/es/panel-component/view-content-panel-container/view-content-panel-container.mjs +12 -12
- package/es/platform/ios-platform-provider.mjs +2 -2
- package/es/platform/wechat-official-platform-provider.mjs +1 -1
- package/es/util/ai-chat-util/ai-chat-util.mjs +204 -41
- package/es/util/app-drawer/app-drawer-component.mjs +20 -6
- package/es/util/app-modal/app-modal-component.mjs +7 -4
- package/es/util/app-popover/app-popover-component.mjs +4 -4
- package/es/util/app-util/app-util.mjs +38 -3
- package/es/util/button-util/button-util.mjs +33 -1
- package/es/util/confirm-util/confirm-util.mjs +4 -4
- package/es/util/directive/loading.mjs +1 -1
- package/es/util/fullscreen/fullscreen-util.mjs +2 -2
- package/es/util/index.mjs +2 -1
- package/es/util/list-util/list-render-util.mjs +25 -6
- package/es/util/loading-util/loading-util.mjs +1 -1
- package/es/util/open-view-util/open-view-util.mjs +1 -1
- package/es/util/print-preview-util/print-preview-markdown/icon/icon.mjs +46 -0
- package/es/util/print-preview-util/print-preview-markdown/print-preview-markdown.css +1 -0
- package/es/util/print-preview-util/print-preview-markdown/print-preview-markdown.mjs +62 -0
- package/es/util/print-preview-util/print-preview-util.mjs +57 -0
- package/es/util/scan-qrcode/scan-qrcode.mjs +1 -1
- package/es/util/user-route-util/user-route-util.mjs +4 -4
- package/es/util/xlsx-util/xlsx-util.mjs +1 -1
- package/es/view/download-view/download-view.mjs +4 -1
- package/es/view/login-view/login-view.mjs +1 -0
- package/es/view-engine/index.mjs +31 -31
- package/es/view-engine/login-view.engine.mjs +1 -1
- package/es/view-engine/mob-calendar-view.engine.mjs +8 -1
- package/es/view-engine/mob-edit-view.engine.mjs +1 -1
- package/es/view-engine/mob-wf-dyna-action-view.engine.mjs +1 -1
- package/es/view-engine/mob-wf-dyna-edit-view.engine.mjs +1 -1
- package/es/view-engine/mob-wf-dyna-start-view.engine.mjs +1 -1
- package/lib/_virtual/index12.cjs +2 -2
- package/lib/_virtual/index13.cjs +2 -2
- package/lib/common/action-group/action-group.cjs +42 -41
- package/lib/common/action-group/action-group.css +1 -1
- package/lib/common/button-list/button-list.cjs +14 -23
- package/lib/common/button-list/button-list.css +1 -1
- package/lib/common/col/col.cjs +1 -1
- package/lib/common/cropping/cropping.cjs +5 -5
- package/lib/common/date-range-picker/components/range-picker/range-picker.cjs +2 -4
- package/lib/common/date-range-picker/components/single-picker/single-picker.cjs +2 -4
- package/lib/common/date-range-picker/date-range-picker.cjs +2 -2
- package/lib/common/emoji-select/components/emoji-item/emoji-item.cjs +4 -4
- package/lib/common/emoji-select/components/emoji-list/emoji-list.cjs +1 -1
- package/lib/common/emoji-select/icons/categories.cjs +9 -57
- package/lib/common/float-button/float-button.cjs +11 -6
- package/lib/common/float-button/float-button.css +1 -1
- package/lib/common/fullscreen-header/fullscreen-header.css +1 -1
- package/lib/common/keep-alive/keep-alive.cjs +2 -2
- package/lib/common/keep-alive/scheduler.cjs +1 -1
- package/lib/common/preview-image/preview-image.cjs +4 -4
- package/lib/common/rawitem/rawitem.cjs +2 -2
- package/lib/common/row/row.cjs +1 -1
- package/lib/common/split/split.cjs +9 -9
- package/lib/common/split-trigger/split-trigger.cjs +1 -1
- package/lib/common/tab-layout/tab-dropdown/tab-dropdown.cjs +1 -1
- package/lib/control/app-menu/app-menu.cjs +2 -2
- package/lib/control/app-menu/custom-menu-design/custom-menu-design.cjs +29 -85
- package/lib/control/app-menu/custom-menu-design/custom-menu-design.css +1 -1
- package/lib/control/app-menu/custom-menu-design/menu-design-list/menu-design-list.cjs +107 -0
- package/lib/control/app-menu/custom-menu-design/menu-design-list/menu-design-list.css +1 -0
- package/lib/control/app-menu/custom-menu-design/menu-design-tree/menu-design-tree.cjs +126 -0
- package/lib/control/app-menu/custom-menu-design/menu-design-tree/menu-design-tree.css +1 -0
- package/lib/control/app-menu/menu-render-util.cjs +6 -1
- package/lib/control/app-menu-icon-view/app-menu-icon-view.cjs +1 -1
- package/lib/control/app-menu-icon-view/index.cjs +1 -1
- package/lib/control/app-menu-list-view/app-menu-list-view.cjs +1 -1
- package/lib/control/app-menu-list-view/index.cjs +1 -1
- package/lib/control/calendar/calendar.cjs +6 -6
- package/lib/control/caption-bar/caption-bar.cjs +1 -1
- package/lib/control/chart/chart.cjs +1 -1
- package/lib/control/dashboard/dashboard.cjs +3 -1
- package/lib/control/dashboard/portlet/actionbar-portlet/actionbar-portlet.cjs +1 -1
- package/lib/control/dashboard/portlet/chart-portlet/chart-portlet.cjs +1 -1
- package/lib/control/dashboard/portlet/container-portlet/container-portlet.cjs +1 -1
- package/lib/control/dashboard/portlet/html-portlet/html-portlet.cjs +1 -1
- package/lib/control/dashboard/portlet/list-portlet/list-portlet.cjs +1 -1
- package/lib/control/dashboard/portlet/menu-portlet/menu-portlet.cjs +1 -1
- package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.cjs +4 -4
- package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.css +1 -1
- package/lib/control/dashboard/portlet/rawitem-portlet/rawitem-portlet.cjs +1 -1
- package/lib/control/dashboard/portlet/view-portlet/view-portlet.cjs +1 -1
- package/lib/control/data-view/data-view.cjs +7 -7
- package/lib/control/data-view/data-view.css +1 -1
- package/lib/control/drbar/drbar.cjs +1 -1
- package/lib/control/drtab/drtab.cjs +1 -1
- package/lib/control/drtab/drtab.controller.cjs +1 -1
- package/lib/control/form/edit-form/edit-form.cjs +1 -1
- package/lib/control/form/form/form.cjs +2 -2
- package/lib/control/form/form-detail/form-button/form-button.cjs +4 -4
- package/lib/control/form/form-detail/form-button/form-button.css +1 -1
- package/lib/control/form/form-detail/form-group-panel/form-group-panel.cjs +1 -1
- package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.cjs +1 -1
- package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.cjs +6 -6
- package/lib/control/form/form-detail/form-mdctrl/form-mdctrl.provider.cjs +2 -2
- package/lib/control/form/search-form/search-form.cjs +1 -1
- package/lib/control/list/list/list.cjs +1 -1
- package/lib/control/list/md-ctrl/md-ctrl.cjs +2 -2
- package/lib/control/list/md-ctrl/md-ctrl.css +1 -1
- package/lib/control/pickup-view-panel/pickup-view-panel.cjs +1 -1
- package/lib/control/search-bar/filter-field-select/filter-field-select.cjs +1 -1
- package/lib/control/search-bar/filter-mode-select/filter-mode-select.cjs +1 -1
- package/lib/control/search-bar/filter-tree/filter-tree.cjs +1 -1
- package/lib/control/search-bar/filter-tree/filter-tree.css +1 -1
- package/lib/control/search-bar/search-bar.cjs +10 -6
- package/lib/control/tab-exp-panel/tab-exp-panel.cjs +1 -1
- package/lib/control/toolbar/float-toolbar/float-toolbar.cjs +19 -8
- package/lib/control/toolbar/float-toolbar/float-toolbar.css +1 -1
- package/lib/control/toolbar/toolbar-group-list/toolbar-group-list.cjs +25 -11
- package/lib/control/toolbar/toolbar-group-list/toolbar-group-list.css +1 -1
- package/lib/control/toolbar/toolbar-render-util.cjs +120 -46
- package/lib/control/toolbar/toolbar.cjs +4 -1
- package/lib/control/toolbar/toolbar.css +1 -1
- package/lib/control/tree/tree.cjs +9 -9
- package/lib/control/tree-exp-bar/tree-exp-bar.cjs +1 -1
- package/lib/control/wizard-panel/wizard-panel.cjs +6 -6
- package/lib/editor/cascader/ibiz-cascader/ibiz-cascader.cjs +2 -2
- package/lib/editor/color-picker/ibiz-color-picker/ibiz-color-picker.cjs +1 -1
- package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +2 -2
- package/lib/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.cjs +2 -2
- package/lib/editor/data-picker/picker-editor.controller.cjs +1 -1
- package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.css +1 -1
- package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +7 -7
- package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.cjs +1 -1
- package/lib/editor/html/html-editor.controller.cjs +26 -9
- package/lib/editor/html/quill-editor/quill-editor.cjs +12 -3
- package/lib/editor/html/quill-editor-preview/quill-editor-preview.cjs +4 -4
- package/lib/editor/html/quill-editor-preview/quill-editor-preview.css +1 -1
- package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +12 -3
- package/lib/editor/markdown/markdown-editor.controller.cjs +23 -3
- package/lib/editor/qrcode/ibiz-qrcode/ibiz-qrcode.cjs +1 -1
- package/lib/editor/slider/ibiz-slider/ibiz-slider.cjs +2 -2
- package/lib/editor/span/span/span.cjs +7 -7
- package/lib/editor/span/span-link/span-link.cjs +1 -1
- package/lib/editor/stepper/ibiz-stepper/ibiz-stepper.cjs +1 -1
- package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +1 -1
- package/lib/editor/text-box/input/input.cjs +4 -4
- package/lib/editor/text-box/signature/signature.cjs +59 -19
- package/lib/editor/upload/ibiz-file-upload/ibiz-file-upload.cjs +1 -1
- package/lib/editor/upload/ibiz-file-upload/ibiz-file-upload.css +1 -1
- package/lib/editor/upload/upload-editor.controller.cjs +18 -1
- package/lib/editor/upload/use/use-van-upload.cjs +6 -2
- package/lib/index.cjs +3 -0
- package/lib/locale/en/index.cjs +26 -23
- package/lib/locale/zh-CN/index.cjs +3 -0
- package/lib/mob-app/App.cjs +9 -0
- package/lib/mob-app/components/modal-router-shell/modal-router-shell.cjs +6 -4
- package/lib/mob-app/components/router-shell/router-shell.cjs +1 -1
- package/lib/mob-app/guard/auth-guard/auth-guard.cjs +2 -2
- package/lib/mob-app/guard/auth-guard/dyna-auth-guard.cjs +3 -3
- package/lib/mob-app/main.cjs +3 -1
- package/lib/mob-app/router/index.cjs +131 -76
- package/lib/mob-app/util/unauthorized-handler/unauthorized-handler.cjs +5 -5
- package/lib/node_modules/.pnpm/dingtalk-jsapi@3.2.0/node_modules/dingtalk-jsapi/lib/packages/frame-talk-client-pc/index.cjs +1 -1
- package/lib/node_modules/.pnpm/dingtalk-jsapi@3.2.0/node_modules/dingtalk-jsapi/lib/sdk/middlewares/index.cjs +1 -1
- package/lib/panel-component/async-action/async-action/async-action.cjs +2 -2
- package/lib/panel-component/async-action/async-action-preview/async-action-preview.cjs +3 -3
- package/lib/panel-component/async-action/async-action-result/async-action-result.cjs +1 -1
- package/lib/panel-component/nav-pos-index/nav-pos-index.controller.cjs +2 -2
- package/lib/panel-component/panel-app-title/panel-app-title.cjs +2 -2
- package/lib/panel-component/panel-button/panel-button.css +1 -1
- package/lib/panel-component/panel-carousel/panel-carousel.controller.cjs +1 -1
- package/lib/panel-component/panel-video-player/panel-video-player.controller.cjs +2 -2
- package/lib/panel-component/split-container/split-container.controller.cjs +1 -1
- package/lib/panel-component/user-message/common/internal-message-default/internal-message-default.provider.cjs +1 -1
- package/lib/panel-component/user-message/user-message.cjs +1 -1
- package/lib/panel-component/user-message/user-message.util.cjs +1 -1
- package/lib/panel-component/view-content-panel-container/view-content-panel-container.cjs +12 -12
- package/lib/panel-component/view-content-panel-container/view-content-panel-container.css +1 -1
- package/lib/platform/ios-platform-provider.cjs +2 -2
- package/lib/platform/wechat-official-platform-provider.cjs +1 -1
- package/lib/util/ai-chat-util/ai-chat-util.cjs +204 -41
- package/lib/util/app-drawer/app-drawer-component.cjs +20 -6
- package/lib/util/app-modal/app-modal-component.cjs +7 -4
- package/lib/util/app-popover/app-popover-component.cjs +4 -4
- package/lib/util/app-util/app-util.cjs +38 -3
- package/lib/util/button-util/button-util.cjs +34 -0
- package/lib/util/confirm-util/confirm-util.cjs +4 -4
- package/lib/util/directive/loading.cjs +1 -1
- package/lib/util/fullscreen/fullscreen-util.cjs +2 -2
- package/lib/util/index.cjs +3 -0
- package/lib/util/list-util/list-render-util.cjs +25 -6
- package/lib/util/loading-util/loading-util.cjs +1 -1
- package/lib/util/open-view-util/open-view-util.cjs +1 -1
- package/lib/util/print-preview-util/print-preview-markdown/icon/icon.cjs +52 -0
- package/lib/util/print-preview-util/print-preview-markdown/print-preview-markdown.cjs +64 -0
- package/lib/util/print-preview-util/print-preview-markdown/print-preview-markdown.css +1 -0
- package/lib/util/print-preview-util/print-preview-util.cjs +59 -0
- package/lib/util/scan-qrcode/scan-qrcode.cjs +1 -1
- package/lib/util/user-route-util/user-route-util.cjs +4 -4
- package/lib/util/xlsx-util/xlsx-util.cjs +1 -1
- package/lib/view/download-view/download-view.cjs +3 -0
- package/lib/view/login-view/login-view.cjs +1 -0
- package/lib/view-engine/index.cjs +31 -31
- package/lib/view-engine/login-view.engine.cjs +1 -1
- package/lib/view-engine/mob-calendar-view.engine.cjs +7 -0
- package/lib/view-engine/mob-edit-view.engine.cjs +1 -1
- package/lib/view-engine/mob-wf-dyna-action-view.engine.cjs +1 -1
- package/lib/view-engine/mob-wf-dyna-edit-view.engine.cjs +1 -1
- package/lib/view-engine/mob-wf-dyna-start-view.engine.cjs +1 -1
- package/package.json +9 -9
- package/dist/chart-j1WkpBhc.js +0 -2
- package/dist/ibiz-markdown-editor-COU_MxNu.js +0 -2
- package/dist/ibiz-markdown-editor-COU_MxNu.js.map +0 -1
- package/dist/index-Bn7VkqJp.js +0 -76
- package/dist/index-Bn7VkqJp.js.map +0 -1
- package/dist/index-ChdHGLJI.js +0 -2
- package/dist/index-Dd7yiMzY.js +0 -2
- package/dist/index.es-D0mZvSDS.js +0 -14
- package/dist/index.es-D0mZvSDS.js.map +0 -1
- package/dist/quill-BOA7ZLOz.js +0 -50
- package/dist/quill-editor-DcZd_lqh.js +0 -2
- package/dist/quill-editor-DcZd_lqh.js.map +0 -1
- package/dist/quill-editor-preview-DghpeKpg.js +0 -2
- package/dist/tree-BTa0bMPr.js +0 -2
- package/dist/xlsx-util-CQaOn5OK.js +0 -105
- package/dist/xlsx-util-CQaOn5OK.js.map +0 -1
- package/es/node_modules/.pnpm/@ibiz-template-plugin_ibiz-mob-ai-chat@0.0.1_cherry-markdown@0.8.58_interactjs@1.10.27_qx-uti_xgmgjpxet4ghyc7txs4jkjxilq/node_modules/@ibiz-template-plugin/ibiz-mob-ai-chat/dist/index.es.mjs +0 -4425
- package/lib/node_modules/.pnpm/@ibiz-template-plugin_ibiz-mob-ai-chat@0.0.1_cherry-markdown@0.8.58_interactjs@1.10.27_qx-uti_xgmgjpxet4ghyc7txs4jkjxilq/node_modules/@ibiz-template-plugin/ibiz-mob-ai-chat/dist/index.es.cjs +0 -4427
|
@@ -44,7 +44,7 @@ const IBizPreviewImage = /* @__PURE__ */ vue.defineComponent({
|
|
|
44
44
|
const getOffsetCorrection = (start, end) => {
|
|
45
45
|
const x = (start.pageX + end.pageX) / 2;
|
|
46
46
|
const y = (start.pageY + end.pageY) / 2;
|
|
47
|
-
origin =
|
|
47
|
+
origin = "".concat(x, "px ").concat(y, "px");
|
|
48
48
|
const offsetLeft = (scale - 1) * (x - scaleOrigin.x) + offset.left;
|
|
49
49
|
const offsetTop = (scale - 1) * (y - scaleOrigin.y) + offset.top;
|
|
50
50
|
scaleOrigin = {
|
|
@@ -59,7 +59,7 @@ const IBizPreviewImage = /* @__PURE__ */ vue.defineComponent({
|
|
|
59
59
|
const changeStyle = (el, arr) => {
|
|
60
60
|
const original = el.style.cssText.split(";");
|
|
61
61
|
original.pop();
|
|
62
|
-
el.style.cssText =
|
|
62
|
+
el.style.cssText = "".concat(original.concat(arr).join(";"), ";");
|
|
63
63
|
};
|
|
64
64
|
vue.onMounted(() => {
|
|
65
65
|
if (imageRef.value) {
|
|
@@ -87,13 +87,13 @@ const IBizPreviewImage = /* @__PURE__ */ vue.defineComponent({
|
|
|
87
87
|
const ratio = getDistance(touches[0], touches[1]) / lastDistance;
|
|
88
88
|
scale = ratio * lastScale;
|
|
89
89
|
offset = getOffsetCorrection(touches[0], touches[1]);
|
|
90
|
-
changeStyle(el, ["transition: all 0s",
|
|
90
|
+
changeStyle(el, ["transition: all 0s", "transform: translate(".concat("".concat(offset.left, "px"), ", ").concat("".concat(offset.top, "px"), ") scale(").concat(scale, ")"), "transform-origin: ".concat(origin)]);
|
|
91
91
|
} else if (touches.length === 1) {
|
|
92
92
|
offset = {
|
|
93
93
|
left: offset.left + (touches[0].clientX - startPoint.x),
|
|
94
94
|
top: offset.top + (touches[0].clientY - startPoint.y)
|
|
95
95
|
};
|
|
96
|
-
changeStyle(el, ["transition: all 0s",
|
|
96
|
+
changeStyle(el, ["transition: all 0s", "transform: translate(".concat("".concat(offset.left, "px"), ", ").concat("".concat(offset.top, "px"), ") scale(").concat(scale, ")"), "transform-origin: ".concat(origin)]);
|
|
97
97
|
startPoint = {
|
|
98
98
|
x: touches[0].clientX,
|
|
99
99
|
y: touches[0].clientY
|
|
@@ -83,7 +83,7 @@ const IBizRawItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
83
83
|
let value;
|
|
84
84
|
const params = rawItem == null ? void 0 : rawItem.rawItemParams;
|
|
85
85
|
if (!params) {
|
|
86
|
-
ibiz.log.error(
|
|
86
|
+
ibiz.log.error("\u672A\u914D\u7F6E\u89C6\u9891\u64AD\u653E\u53C2\u6570:".concat(key, "}"));
|
|
87
87
|
return void 0;
|
|
88
88
|
}
|
|
89
89
|
params.forEach((item) => {
|
|
@@ -129,7 +129,7 @@ const IBizRawItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
129
129
|
alertParams.value.title = rawItemContent.value;
|
|
130
130
|
alertParams.value["left-icon"] = messageTypeIcon[rawItemType.value];
|
|
131
131
|
}
|
|
132
|
-
const func = new Function(
|
|
132
|
+
const func = new Function("return (".concat(rawItemContent.value, ");"));
|
|
133
133
|
rawConfig = func();
|
|
134
134
|
switch (rawItemType.value) {
|
|
135
135
|
case "VIDEO":
|
package/lib/common/row/row.cjs
CHANGED
|
@@ -30,7 +30,7 @@ const IBizRow = /* @__PURE__ */ vue.defineComponent({
|
|
|
30
30
|
const _dir = dir || "column";
|
|
31
31
|
return vue.createVNode("div", {
|
|
32
32
|
"class": [this.ns.b(), this.ns.m("flex")],
|
|
33
|
-
"style":
|
|
33
|
+
"style": "display:flex;flex-direction: ".concat(_dir, ";justify-content: ").concat(align, ";align-items: ").concat(valign, ";")
|
|
34
34
|
}, [defaultSlot]);
|
|
35
35
|
}
|
|
36
36
|
return vue.createVNode(vue.resolveComponent("van-row"), {
|
|
@@ -58,13 +58,13 @@ const IBizSplit = /* @__PURE__ */ vue.defineComponent({
|
|
|
58
58
|
};
|
|
59
59
|
const getMax = (value1, value2) => {
|
|
60
60
|
if (valueIsPx.value)
|
|
61
|
-
return
|
|
61
|
+
return "".concat(Math.max(parseFloat(value1), parseFloat(value2)), "px");
|
|
62
62
|
return Math.max(value1, value2);
|
|
63
63
|
};
|
|
64
64
|
const getAnotherOffset = (value) => {
|
|
65
65
|
let res = 0;
|
|
66
66
|
if (valueIsPx.value)
|
|
67
|
-
res =
|
|
67
|
+
res = "".concat(outerWrapper.value[offsetSize.value] - parseFloat(value), "px");
|
|
68
68
|
else
|
|
69
69
|
res = 1 - value;
|
|
70
70
|
return res;
|
|
@@ -75,7 +75,7 @@ const IBizSplit = /* @__PURE__ */ vue.defineComponent({
|
|
|
75
75
|
const pageOffset = isHorizontal.value ? e.pageX : e.pageY;
|
|
76
76
|
const moveOffset = pageOffset - initOffset.value;
|
|
77
77
|
const outerWidth = outerWrapper.value[offsetSize.value];
|
|
78
|
-
let value = valueIsPx.value ?
|
|
78
|
+
let value = valueIsPx.value ? "".concat(parseFloat(oldOffset.value) + moveOffset, "px") : px2percent(outerWidth * oldOffset.value + moveOffset, outerWidth);
|
|
79
79
|
const anotherValue = getAnotherOffset(value);
|
|
80
80
|
if (parseFloat(value) <= parseFloat(computedMin.value)) {
|
|
81
81
|
value = getMax(value, computedMin.value);
|
|
@@ -144,12 +144,12 @@ const IBizSplit = /* @__PURE__ */ vue.defineComponent({
|
|
|
144
144
|
"class": this.ns.m("horizontal")
|
|
145
145
|
}, [vue.createVNode("div", {
|
|
146
146
|
"style": {
|
|
147
|
-
width:
|
|
147
|
+
width: "".concat(this.offset, "%")
|
|
148
148
|
},
|
|
149
149
|
"class": [this.paneClasses, this.ns.bm("pane", "left")]
|
|
150
150
|
}, [(_b = (_a = this.$slots).left) == null ? void 0 : _b.call(_a)]), vue.createVNode("div", {
|
|
151
151
|
"style": {
|
|
152
|
-
left:
|
|
152
|
+
left: "".concat(this.offset, "%")
|
|
153
153
|
},
|
|
154
154
|
"class": this.ns.b("trigger-con"),
|
|
155
155
|
"tabindex": 0,
|
|
@@ -158,19 +158,19 @@ const IBizSplit = /* @__PURE__ */ vue.defineComponent({
|
|
|
158
158
|
"mode": "vertical"
|
|
159
159
|
}, null)]), vue.createVNode("div", {
|
|
160
160
|
"style": {
|
|
161
|
-
width:
|
|
161
|
+
width: "".concat(this.anotherOffset, "%")
|
|
162
162
|
},
|
|
163
163
|
"class": [this.paneClasses, this.ns.bm("pane", "right")]
|
|
164
164
|
}, [(_f = (_e = this.$slots).right) == null ? void 0 : _f.call(_e)])]) : vue.createVNode("div", {
|
|
165
165
|
"class": this.ns.m("vertical")
|
|
166
166
|
}, [vue.createVNode("div", {
|
|
167
167
|
"style": {
|
|
168
|
-
bottom:
|
|
168
|
+
bottom: "".concat(this.anotherOffset, "%")
|
|
169
169
|
},
|
|
170
170
|
"class": [this.paneClasses, this.ns.bm("pane", "top")]
|
|
171
171
|
}, [(_h = (_g = this.$slots).top) == null ? void 0 : _h.call(_g)]), vue.createVNode("div", {
|
|
172
172
|
"style": {
|
|
173
|
-
top:
|
|
173
|
+
top: "".concat(this.offset, "%")
|
|
174
174
|
},
|
|
175
175
|
"class": this.ns.b("trigger-con"),
|
|
176
176
|
"tabindex": 0,
|
|
@@ -179,7 +179,7 @@ const IBizSplit = /* @__PURE__ */ vue.defineComponent({
|
|
|
179
179
|
"mode": "horizontal"
|
|
180
180
|
}, null)]), vue.createVNode("div", {
|
|
181
181
|
"style": {
|
|
182
|
-
top:
|
|
182
|
+
top: "".concat(this.offset, "%")
|
|
183
183
|
},
|
|
184
184
|
"class": [this.paneClasses, this.ns.bm("pane", "bottom")]
|
|
185
185
|
}, [(_l = (_k = this.$slots).bottom) == null ? void 0 : _l.call(_k)])])]);
|
|
@@ -30,7 +30,7 @@ const IBizSplitTrigger = /* @__PURE__ */ vue.defineComponent({
|
|
|
30
30
|
"class": this.barConClasses
|
|
31
31
|
}, [this.items.map((_item, i) => vue.createVNode("i", {
|
|
32
32
|
"class": this.ns.b("bar"),
|
|
33
|
-
"key":
|
|
33
|
+
"key": "trigger-".concat(i)
|
|
34
34
|
}, null))])]);
|
|
35
35
|
}
|
|
36
36
|
});
|
|
@@ -43,7 +43,7 @@ const TabDropdown = /* @__PURE__ */ vue.defineComponent({
|
|
|
43
43
|
noArrow: true,
|
|
44
44
|
autoClose: true,
|
|
45
45
|
placement: "bottom-end",
|
|
46
|
-
modalClass:
|
|
46
|
+
modalClass: "".concat(ns.e("list-modal")),
|
|
47
47
|
appendTo: (_a = tabDropdownRef.value) == null ? void 0 : _a.$el
|
|
48
48
|
});
|
|
49
49
|
floatOverlay.present(_currentTarget);
|
|
@@ -43,7 +43,7 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
43
43
|
},
|
|
44
44
|
setup() {
|
|
45
45
|
const c = vue3Util.useControlController((...args) => new runtime.AppMenuController(...args));
|
|
46
|
-
const ns = vue3Util.useNamespace(
|
|
46
|
+
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
47
47
|
const activeName = vue.ref();
|
|
48
48
|
const {
|
|
49
49
|
onCustomizedClick
|
|
@@ -67,7 +67,7 @@ const AppMenuControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
67
67
|
activeName.value = active;
|
|
68
68
|
await c.onClickMenuItem(active, event, true, opts);
|
|
69
69
|
};
|
|
70
|
-
|
|
70
|
+
c.evt.on("onCreated", async () => {
|
|
71
71
|
const allItems = c.getAllItems();
|
|
72
72
|
const defaultActiveMenuItem = allItems.find((item) => {
|
|
73
73
|
return item.openDefault && c.isMobMenuItemValid(item);
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var vue = require('vue');
|
|
4
4
|
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
5
|
+
var menuDesignList = require('./menu-design-list/menu-design-list.cjs');
|
|
6
|
+
var menuDesignTree = require('./menu-design-tree/menu-design-tree.cjs');
|
|
7
7
|
require('./custom-menu-design.css');
|
|
8
8
|
|
|
9
9
|
"use strict";
|
|
@@ -14,12 +14,12 @@ const MenuDesign = /* @__PURE__ */ vue.defineComponent({
|
|
|
14
14
|
type: Object,
|
|
15
15
|
required: true
|
|
16
16
|
},
|
|
17
|
-
show: {
|
|
18
|
-
type: Boolean,
|
|
19
|
-
default: false
|
|
20
|
-
},
|
|
21
17
|
modal: {
|
|
22
18
|
type: Object
|
|
19
|
+
},
|
|
20
|
+
showMode: {
|
|
21
|
+
type: String,
|
|
22
|
+
default: "DEFALUT"
|
|
23
23
|
}
|
|
24
24
|
},
|
|
25
25
|
emits: {
|
|
@@ -30,104 +30,48 @@ const MenuDesign = /* @__PURE__ */ vue.defineComponent({
|
|
|
30
30
|
}) {
|
|
31
31
|
const ns = vue3Util.useNamespace("menu-design");
|
|
32
32
|
const c = props.controller;
|
|
33
|
-
const
|
|
34
|
-
const allMenuMap = /* @__PURE__ */ new Map();
|
|
35
|
-
const initData = () => {
|
|
36
|
-
[...c.state.mobMenuItems, ...c.saveConfigs].forEach((item) => {
|
|
37
|
-
if (item.id) {
|
|
38
|
-
menuMap.value.set(item.id, item);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
core.recursiveIterate({
|
|
42
|
-
appMenuItems: c.state.mobAuthedMenuItems
|
|
43
|
-
}, (item) => {
|
|
44
|
-
if (item.id) {
|
|
45
|
-
allMenuMap.set(item.id, item);
|
|
46
|
-
}
|
|
47
|
-
}, {
|
|
48
|
-
childrenFields: ["appMenuItems"]
|
|
49
|
-
});
|
|
50
|
-
};
|
|
51
|
-
initData();
|
|
52
|
-
const getItemIcon = (item, isGroup) => {
|
|
53
|
-
if (item.sysImage)
|
|
54
|
-
return item.sysImage;
|
|
55
|
-
switch (c.model.appMenuStyle) {
|
|
56
|
-
case "ICONVIEW":
|
|
57
|
-
return !isGroup ? menuRenderUtil.getDefaultIconVal() : void 0;
|
|
58
|
-
case "LISTVIEW":
|
|
59
|
-
return;
|
|
60
|
-
default:
|
|
61
|
-
return menuRenderUtil.getDefaultIconVal();
|
|
62
|
-
}
|
|
63
|
-
};
|
|
33
|
+
const curVisibleMenuItems = vue.ref([...c.state.mobMenuItems]);
|
|
64
34
|
const onClose = () => {
|
|
65
35
|
var _a;
|
|
66
36
|
emit("close");
|
|
67
37
|
(_a = props.modal) == null ? void 0 : _a.dismiss();
|
|
68
|
-
menuMap.value.clear();
|
|
69
38
|
};
|
|
70
39
|
const onSave = async () => {
|
|
71
|
-
|
|
72
|
-
return allMenuMap.get(item.id);
|
|
73
|
-
}).filter((item) => !!item);
|
|
74
|
-
c.saveCustomMenusModel(curMenuItems);
|
|
40
|
+
c.saveCustomMenusModel(curVisibleMenuItems.value);
|
|
75
41
|
onClose();
|
|
76
42
|
};
|
|
77
|
-
const
|
|
78
|
-
|
|
79
|
-
return;
|
|
80
|
-
if (checked) {
|
|
81
|
-
menuMap.value.delete(item.id);
|
|
82
|
-
} else {
|
|
83
|
-
menuMap.value.set(item.id, item);
|
|
84
|
-
}
|
|
85
|
-
};
|
|
86
|
-
const renderNodeItem = (_item, _level, isGroup) => {
|
|
87
|
-
const marginLeft = `calc(${_level} * var(${ns.cssVarBlockName("spacing-node-item-margin-left")}))`;
|
|
88
|
-
let checked = menuMap.value.has(_item.id || "");
|
|
89
|
-
return vue.createVNode("div", {
|
|
90
|
-
"class": [ns.e("item"), ns.is("group-item", !!isGroup)],
|
|
91
|
-
"style": {
|
|
92
|
-
marginLeft
|
|
93
|
-
},
|
|
94
|
-
"onClick": () => handleItemClick(_item, checked)
|
|
95
|
-
}, [vue.createVNode(vue.resolveComponent("iBizIcon"), {
|
|
96
|
-
"class": ns.em("item", "icon"),
|
|
97
|
-
"icon": getItemIcon(_item, isGroup)
|
|
98
|
-
}, null), vue.createVNode("div", {
|
|
99
|
-
"class": ns.em("item", "caption")
|
|
100
|
-
}, [_item.caption]), vue.createVNode(vue.resolveComponent("van-checkbox"), {
|
|
101
|
-
"modelValue": checked,
|
|
102
|
-
"onUpdate:modelValue": ($event) => checked = $event,
|
|
103
|
-
"class": ns.em("item", "checkbox")
|
|
104
|
-
}, null)]);
|
|
43
|
+
const onCurVisibleMenuChange = (menuItems) => {
|
|
44
|
+
curVisibleMenuItems.value = menuItems;
|
|
105
45
|
};
|
|
106
|
-
const
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
46
|
+
const renderContent = () => {
|
|
47
|
+
switch (props.showMode) {
|
|
48
|
+
case "LIST":
|
|
49
|
+
return vue.createVNode(menuDesignList.MenuDesignList, {
|
|
50
|
+
"curVisibleMenuItems": curVisibleMenuItems.value,
|
|
51
|
+
"allVisibleMenuItems": c.state.mobAuthedMenuItems,
|
|
52
|
+
"onCurVisibleMenuChange": onCurVisibleMenuChange
|
|
53
|
+
}, null);
|
|
54
|
+
case "TREE":
|
|
55
|
+
default:
|
|
56
|
+
return vue.createVNode(menuDesignTree.MenuDesignTree, {
|
|
57
|
+
"curVisibleMenuItems": curVisibleMenuItems.value,
|
|
58
|
+
"allVisibleMenuItems": c.state.mobAuthedMenuItems,
|
|
59
|
+
"appMenuStyle": c.model.appMenuStyle,
|
|
60
|
+
"onCurVisibleMenuChange": onCurVisibleMenuChange
|
|
61
|
+
}, null);
|
|
112
62
|
}
|
|
113
|
-
return renderNodeItem(_item, _level);
|
|
114
|
-
};
|
|
115
|
-
const renderTree = (items) => {
|
|
116
|
-
return vue.createVNode("div", {
|
|
117
|
-
"class": ns.e("tree")
|
|
118
|
-
}, [items.map((item) => renderNode(item, 0))]);
|
|
119
63
|
};
|
|
120
64
|
return {
|
|
121
65
|
c,
|
|
122
66
|
ns,
|
|
123
67
|
onSave,
|
|
124
68
|
onClose,
|
|
125
|
-
|
|
69
|
+
renderContent
|
|
126
70
|
};
|
|
127
71
|
},
|
|
128
72
|
render() {
|
|
129
73
|
return vue.createVNode("div", {
|
|
130
|
-
"class": this.ns.b()
|
|
74
|
+
"class": [this.ns.b(), this.ns.is(this.showMode.toLocaleLowerCase(), true)]
|
|
131
75
|
}, [vue.createVNode("div", {
|
|
132
76
|
"class": this.ns.e("header")
|
|
133
77
|
}, [vue.createVNode("ion-icon", {
|
|
@@ -141,7 +85,7 @@ const MenuDesign = /* @__PURE__ */ vue.defineComponent({
|
|
|
141
85
|
"onClick": this.onSave
|
|
142
86
|
}, [ibiz.i18n.t("control.appmenu.save")])]), vue.createVNode("div", {
|
|
143
87
|
"class": this.ns.e("content")
|
|
144
|
-
}, [this.
|
|
88
|
+
}, [this.renderContent()])]);
|
|
145
89
|
}
|
|
146
90
|
});
|
|
147
91
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-menu-design{--ibiz-menu-design-color-
|
|
1
|
+
.ibiz-menu-design{--ibiz-menu-design-color-list-bg:var(--ibiz-color-bg-0);--ibiz-menu-design-color-primary-btn-text:var(--ibiz-color-primary);--ibiz-menu-design-spacing-padding:var(--ibiz-spacing-base);--ibiz-menu-design-spacing-header-padding:0 0 var(--ibiz-spacing-tight);--ibiz-menu-design-radius-item-circle:var(--ibiz-border-radius-medium);--ibiz-menu-design-font-header-font-size:var(--ibiz-font-size-header-5);--ibiz-menu-design-font-header-caption-font-weight:var(--ibiz-font-weight-bold);--ibiz-menu-design-font-close-icon-font-size:var(--ibiz-font-size-header-3);--ibiz-menu-design-font-item-font-size:var(--ibiz-font-size-header-6);display:flex;flex-direction:column;width:100%;height:100%;padding:var(--ibiz-menu-design-spacing-padding)}.ibiz-menu-design__header{display:flex;align-items:center;justify-content:space-between;padding:var(--ibiz-menu-design-spacing-header-padding);font-size:var(--ibiz-menu-design-font-header-font-size)}.ibiz-menu-design__header--close-icon{font-size:var(--ibiz-menu-design-font-close-icon-font-size)}.ibiz-menu-design__header--caption{font-weight:var(--ibiz-menu-design-font-header-caption-font-weight)}.ibiz-menu-design__header--save{color:var(--ibiz-menu-design-color-primary-btn-text)}.ibiz-menu-design__content{flex:1;overflow-y:auto}.ibiz-menu-design.is-list{background-color:var(--ibiz-menu-design-color-list-bg)}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var vue = require('vue');
|
|
4
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
|
+
var draggable = require('vuedraggable');
|
|
6
|
+
require('./menu-design-list.css');
|
|
7
|
+
|
|
8
|
+
"use strict";
|
|
9
|
+
const MenuDesignList = /* @__PURE__ */ vue.defineComponent({
|
|
10
|
+
name: "IBizMenuDesignList",
|
|
11
|
+
components: {
|
|
12
|
+
draggable
|
|
13
|
+
},
|
|
14
|
+
props: {
|
|
15
|
+
curVisibleMenuItems: {
|
|
16
|
+
type: Array,
|
|
17
|
+
required: true
|
|
18
|
+
},
|
|
19
|
+
allVisibleMenuItems: {
|
|
20
|
+
type: Array,
|
|
21
|
+
required: true
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
emits: {
|
|
25
|
+
curVisibleMenuChange: (_menuItems) => true
|
|
26
|
+
},
|
|
27
|
+
setup(props, {
|
|
28
|
+
emit
|
|
29
|
+
}) {
|
|
30
|
+
const ns = vue3Util.useNamespace("menu-design-list");
|
|
31
|
+
const curMenuItems = vue.ref([]);
|
|
32
|
+
const moreMenuItems = vue.ref([]);
|
|
33
|
+
const initData = () => {
|
|
34
|
+
curMenuItems.value = [...props.curVisibleMenuItems];
|
|
35
|
+
moreMenuItems.value = props.allVisibleMenuItems.filter((menu) => !props.curVisibleMenuItems.find((_item) => menu.id === _item.id));
|
|
36
|
+
};
|
|
37
|
+
initData();
|
|
38
|
+
const emitChange = () => {
|
|
39
|
+
emit("curVisibleMenuChange", [...curMenuItems.value]);
|
|
40
|
+
};
|
|
41
|
+
const handleRemoveOrAdd = (type, index) => {
|
|
42
|
+
if (type === "nav") {
|
|
43
|
+
const item = curMenuItems.value[index];
|
|
44
|
+
curMenuItems.value.splice(index, 1);
|
|
45
|
+
moreMenuItems.value.push(item);
|
|
46
|
+
} else {
|
|
47
|
+
const item = moreMenuItems.value[index];
|
|
48
|
+
moreMenuItems.value.splice(index, 1);
|
|
49
|
+
curMenuItems.value.push(item);
|
|
50
|
+
}
|
|
51
|
+
emitChange();
|
|
52
|
+
};
|
|
53
|
+
const renderDraggable = (type, menuItems) => {
|
|
54
|
+
return vue.createVNode(draggable, {
|
|
55
|
+
"itemKey": "id",
|
|
56
|
+
"group": "menu-design",
|
|
57
|
+
"handle": ".draggable-icon",
|
|
58
|
+
"list": menuItems,
|
|
59
|
+
"class": ns.e("draggable"),
|
|
60
|
+
"onEnd": emitChange
|
|
61
|
+
}, {
|
|
62
|
+
item: ({
|
|
63
|
+
element,
|
|
64
|
+
index
|
|
65
|
+
}) => {
|
|
66
|
+
return vue.createVNode("div", {
|
|
67
|
+
"class": ns.em("draggable", "item")
|
|
68
|
+
}, [vue.createVNode("ion-icon", {
|
|
69
|
+
"name": type === "nav" ? "remove-circle" : "add-circle",
|
|
70
|
+
"class": [ns.em("draggable", "icon"), ns.em("draggable", type === "nav" ? "remove-icon" : "add-icon"), ns.em("draggable", "prefix-icon")],
|
|
71
|
+
"onClick": () => handleRemoveOrAdd(type, index)
|
|
72
|
+
}, null), vue.createVNode("div", {
|
|
73
|
+
"class": ns.em("draggable", "item-content")
|
|
74
|
+
}, [vue.createVNode("div", {
|
|
75
|
+
"class": ns.em("draggable", "item-caption")
|
|
76
|
+
}, [vue.createVNode(vue.resolveComponent("iBizIcon"), {
|
|
77
|
+
"icon": element.sysImage,
|
|
78
|
+
"class": ns.em("draggable", "item-icon")
|
|
79
|
+
}, null), vue.createVNode("div", null, [element.caption])]), vue.createVNode("ion-icon", {
|
|
80
|
+
"name": "menu-outline",
|
|
81
|
+
"class": ["draggable-icon", ns.em("draggable", "icon"), ns.em("draggable", "suffix-icon")]
|
|
82
|
+
}, null)])]);
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
const renderMenuList = (type) => {
|
|
87
|
+
return vue.createVNode("div", {
|
|
88
|
+
"class": ns.e("group")
|
|
89
|
+
}, [vue.createVNode("div", {
|
|
90
|
+
"class": ns.em("group", "caption")
|
|
91
|
+
}, [type === "nav" ? ibiz.i18n.t("control.appmenu.bottomNav") : ibiz.i18n.t("control.appmenu.more")]), renderDraggable(type, type === "nav" ? curMenuItems.value : moreMenuItems.value)]);
|
|
92
|
+
};
|
|
93
|
+
return {
|
|
94
|
+
ns,
|
|
95
|
+
renderMenuList
|
|
96
|
+
};
|
|
97
|
+
},
|
|
98
|
+
render() {
|
|
99
|
+
return vue.createVNode("div", {
|
|
100
|
+
"class": this.ns.b()
|
|
101
|
+
}, [vue.createVNode("div", {
|
|
102
|
+
"class": this.ns.e("wrapper")
|
|
103
|
+
}, [[this.renderMenuList("nav"), this.renderMenuList("more")]])]);
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
exports.MenuDesignList = MenuDesignList;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-menu-design-list{--ibiz-menu-design-list-color-group-caption:var(--ibiz-color-text-2);--ibiz-menu-design-list-color-draggable-bg:var(--ibiz-color-bg-1);--ibiz-menu-design-list-color-draggable-prefix-icon:var(--ibiz-color-danger);--ibiz-menu-design-list-color-draggable-add-icon:var(--ibiz-color-primary);--ibiz-menu-design-list-color-draggable-item-content-border:var(--ibiz-color-border);--ibiz-menu-design-list-width-draggable-item-icon:var(--van-tabbar-item-icon-size);--ibiz-menu-design-list-spacing-caption-padding:var(--ibiz-spacing-base) 0;--ibiz-menu-design-list-spacing-draggable-padding:var(--ibiz-spacing-base-tight);--ibiz-menu-design-list-spacing-draggable-item-content-padding:var(--ibiz-spacing-base-tight) 0;--ibiz-menu-design-list-spacing-draggable-prefix-icon-margin:0 var(--ibiz-spacing-tight) 0 0;--ibiz-menu-design-list-spacing-draggable-item-icon:0 var(--ibiz-spacing-tight) 0 0;--ibiz-menu-design-list-radius-draggable-circle:var(--ibiz-border-radius-medium);--ibiz-menu-design-list-font-draggable-icon:var(--ibiz-font-size-header-3);--ibiz-menu-design-list-font-draggable-item:var(--ibiz-width-icon-medium);--ibiz-menu-design-list-line-height-draggable-item-caption:1}.ibiz-menu-design-list__group--caption{padding:var(--ibiz-menu-design-list-spacing-caption-padding);color:var(--ibiz-menu-design-list-color-group-caption)}.ibiz-menu-design-list__draggable{padding:var(--ibiz-menu-design-list-spacing-draggable-padding);background-color:var(--ibiz-menu-design-list-color-draggable-bg);border-radius:var(--ibiz-menu-design-list-radius-draggable-circle)}.ibiz-menu-design-list__draggable--icon{font-size:var(--ibiz-menu-design-list-font-draggable-icon)}.ibiz-menu-design-list__draggable--icon.ibiz-menu-design-list__draggable--prefix-icon{margin:var(--ibiz-menu-design-list-spacing-draggable-prefix-icon-margin)}.ibiz-menu-design-list__draggable--icon.ibiz-menu-design-list__draggable--remove-icon{color:var(--ibiz-menu-design-list-color-draggable-prefix-icon)}.ibiz-menu-design-list__draggable--icon.ibiz-menu-design-list__draggable--add-icon{color:var(--ibiz-menu-design-list-color-draggable-add-icon)}.ibiz-menu-design-list__draggable--item{display:flex;align-items:center;width:100%;font-size:var(--ibiz-menu-design-list-font-draggable-item)}.ibiz-menu-design-list__draggable--item-content{display:flex;flex-grow:1;align-items:center;justify-content:space-between;padding:var(--ibiz-menu-design-list-spacing-draggable-item-content-padding);border-bottom:1px solid var(--ibiz-menu-design-list-color-draggable-item-content-border)}.ibiz-menu-design-list__draggable--item-caption{display:flex;align-items:center;line-height:var(--ibiz-menu-design-list-line-height-draggable-item-caption)}.ibiz-menu-design-list__draggable--item-icon{display:flex;align-items:center;width:var(--ibiz-menu-design-list-width-draggable-item-icon);margin:var(--ibiz-menu-design-list-spacing-draggable-item-icon)}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var vue = require('vue');
|
|
4
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
|
+
var core = require('@ibiz-template/core');
|
|
6
|
+
var menuRenderUtil = require('../../menu-render-util.cjs');
|
|
7
|
+
require('./menu-design-tree.css');
|
|
8
|
+
|
|
9
|
+
"use strict";
|
|
10
|
+
const MenuDesignTree = /* @__PURE__ */ vue.defineComponent({
|
|
11
|
+
name: "IBizMenuDesignTree",
|
|
12
|
+
props: {
|
|
13
|
+
curVisibleMenuItems: {
|
|
14
|
+
type: Array,
|
|
15
|
+
required: true
|
|
16
|
+
},
|
|
17
|
+
allVisibleMenuItems: {
|
|
18
|
+
type: Array,
|
|
19
|
+
required: true
|
|
20
|
+
},
|
|
21
|
+
appMenuStyle: {
|
|
22
|
+
type: String
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
emits: {
|
|
26
|
+
curVisibleMenuChange: (_menuItems) => true
|
|
27
|
+
},
|
|
28
|
+
setup(props, {
|
|
29
|
+
emit
|
|
30
|
+
}) {
|
|
31
|
+
const ns = vue3Util.useNamespace("menu-design-tree");
|
|
32
|
+
const menuMap = vue.ref(/* @__PURE__ */ new Map());
|
|
33
|
+
const allMenuMap = /* @__PURE__ */ new Map();
|
|
34
|
+
const initData = () => {
|
|
35
|
+
core.recursiveIterate({
|
|
36
|
+
appMenuItems: props.curVisibleMenuItems
|
|
37
|
+
}, (item) => {
|
|
38
|
+
if (item.id) {
|
|
39
|
+
menuMap.value.set(item.id, item);
|
|
40
|
+
}
|
|
41
|
+
}, {
|
|
42
|
+
childrenFields: ["appMenuItems"]
|
|
43
|
+
});
|
|
44
|
+
core.recursiveIterate({
|
|
45
|
+
appMenuItems: props.allVisibleMenuItems
|
|
46
|
+
}, (item) => {
|
|
47
|
+
if (item.id) {
|
|
48
|
+
allMenuMap.set(item.id, item);
|
|
49
|
+
}
|
|
50
|
+
}, {
|
|
51
|
+
childrenFields: ["appMenuItems"]
|
|
52
|
+
});
|
|
53
|
+
};
|
|
54
|
+
initData();
|
|
55
|
+
vue.onUnmounted(() => {
|
|
56
|
+
menuMap.value.clear();
|
|
57
|
+
allMenuMap.clear();
|
|
58
|
+
});
|
|
59
|
+
const getItemIcon = (item, isGroup) => {
|
|
60
|
+
if (item.sysImage)
|
|
61
|
+
return item.sysImage;
|
|
62
|
+
switch (props.appMenuStyle) {
|
|
63
|
+
case "ICONVIEW":
|
|
64
|
+
return !isGroup ? menuRenderUtil.getDefaultIconVal() : void 0;
|
|
65
|
+
case "LISTVIEW":
|
|
66
|
+
return;
|
|
67
|
+
default:
|
|
68
|
+
return menuRenderUtil.getDefaultIconVal();
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
const handleItemClick = (item, checked) => {
|
|
72
|
+
if (!item.id)
|
|
73
|
+
return;
|
|
74
|
+
if (checked) {
|
|
75
|
+
menuMap.value.delete(item.id);
|
|
76
|
+
} else {
|
|
77
|
+
menuMap.value.set(item.id, item);
|
|
78
|
+
}
|
|
79
|
+
emit("curVisibleMenuChange", Array.from(menuMap.value.values()).map((_menu) => {
|
|
80
|
+
return allMenuMap.get(_menu.id);
|
|
81
|
+
}).filter((_menu) => !!_menu));
|
|
82
|
+
};
|
|
83
|
+
const renderNodeItem = (_item, _level, isGroup) => {
|
|
84
|
+
const marginLeft = "calc(".concat(_level, " * var(").concat(ns.cssVarBlockName("spacing-node-item-margin-left"), "))");
|
|
85
|
+
let checked = menuMap.value.has(_item.id || "");
|
|
86
|
+
return vue.createVNode("div", {
|
|
87
|
+
"class": [ns.e("item"), ns.is("group-item", !!isGroup)],
|
|
88
|
+
"style": {
|
|
89
|
+
marginLeft
|
|
90
|
+
},
|
|
91
|
+
"onClick": () => handleItemClick(_item, checked)
|
|
92
|
+
}, [vue.createVNode(vue.resolveComponent("iBizIcon"), {
|
|
93
|
+
"class": ns.em("item", "icon"),
|
|
94
|
+
"icon": getItemIcon(_item, isGroup)
|
|
95
|
+
}, null), vue.createVNode("div", {
|
|
96
|
+
"class": ns.em("item", "caption")
|
|
97
|
+
}, [_item.caption]), vue.createVNode(vue.resolveComponent("van-checkbox"), {
|
|
98
|
+
"modelValue": checked,
|
|
99
|
+
"onUpdate:modelValue": ($event) => checked = $event,
|
|
100
|
+
"class": ns.em("item", "checkbox")
|
|
101
|
+
}, null)]);
|
|
102
|
+
};
|
|
103
|
+
const renderNode = (_item, _level) => {
|
|
104
|
+
var _a;
|
|
105
|
+
if (_item.appMenuItems && _item.appMenuItems.length > 0) {
|
|
106
|
+
return [renderNodeItem(_item, _level, true), ...(_a = _item.appMenuItems) == null ? void 0 : _a.map((item) => {
|
|
107
|
+
return renderNode(item, _level + 1);
|
|
108
|
+
})];
|
|
109
|
+
}
|
|
110
|
+
return renderNodeItem(_item, _level);
|
|
111
|
+
};
|
|
112
|
+
return {
|
|
113
|
+
ns,
|
|
114
|
+
renderNode
|
|
115
|
+
};
|
|
116
|
+
},
|
|
117
|
+
render() {
|
|
118
|
+
return vue.createVNode("div", {
|
|
119
|
+
"class": this.ns.b()
|
|
120
|
+
}, [vue.createVNode("div", {
|
|
121
|
+
"class": this.ns.e("wrapper")
|
|
122
|
+
}, [this.allVisibleMenuItems.map((item) => this.renderNode(item, 0))])]);
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
exports.MenuDesignTree = MenuDesignTree;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-menu-design-tree{--ibiz-menu-design-tree-color-item-bg:var(--ibiz-color-bg-0);--ibiz-menu-design-tree-height-item:var(--ibiz-height-control-large);--ibiz-menu-design-tree-spacing-item-padding:0 var(--ibiz-spacing-base);--ibiz-menu-design-tree-spacing-item-margin:var(--ibiz-spacing-tight) 0;--ibiz-menu-design-tree-spacing-item-caption-margin:0 0 0 var(--ibiz-spacing-tight);--ibiz-menu-design-tree-spacing-item-checkbox-margin:0 0 0 var(--ibiz-spacing-extra-tight);--ibiz-menu-design-tree-spacing-node-item-margin-left:1.25rem;--ibiz-menu-design-tree-radius-item-circle:var(--ibiz-border-radius-medium);--ibiz-menu-design-tree-font-item-font-size:var(--ibiz-font-size-header-6);--ibiz-menu-design-tree-icon-item-size:var(--ibiz-font-size-header-6)}.ibiz-menu-design-tree__item{display:flex;align-items:center;height:var(--ibiz-menu-design-tree-height-item);padding:var(--ibiz-menu-design-tree-spacing-item-padding);margin:var(--ibiz-menu-design-tree-spacing-item-margin);font-size:var(--ibiz-menu-design-tree-font-item-font-size);line-height:var(--ibiz-menu-design-tree-height-item);background-color:var(--ibiz-menu-design-tree-color-item-bg);border-radius:var(--ibiz-menu-design-tree-radius-item-circle)}.ibiz-menu-design-tree__item--icon{display:flex;align-items:center;width:var(--ibiz-menu-design-tree-icon-item-size)}.ibiz-menu-design-tree__item--icon+.ibiz-menu-design-tree__item--caption{margin:var(--ibiz-menu-design-tree-spacing-item-caption-margin)}.ibiz-menu-design-tree__item--caption{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-menu-design-tree__item--checkbox{padding:var(--ibiz-menu-design-tree-spacing-item-checkbox-margin);margin-left:auto}.ibiz-menu-design-tree .ibiz-menu-design-tree__item{position:relative}.ibiz-menu-design-tree .ibiz-menu-design-tree__item::after{position:absolute;top:0;left:0;display:block;width:100%;height:100%;content:""}
|
|
@@ -10,13 +10,18 @@ function getDefaultIconVal() {
|
|
|
10
10
|
};
|
|
11
11
|
}
|
|
12
12
|
function useMenuRender(c) {
|
|
13
|
+
const isDefaultMenu = !c.model.appMenuStyle;
|
|
14
|
+
const showMode = isDefaultMenu ? "LIST" : "TREE";
|
|
13
15
|
const onCustomizedClick = async () => {
|
|
14
16
|
await ibiz.overlay.drawer((modal) => {
|
|
15
17
|
return vue.h(customMenuDesign.MenuDesign, {
|
|
16
18
|
modal,
|
|
17
|
-
controller: c
|
|
19
|
+
controller: c,
|
|
20
|
+
showMode
|
|
18
21
|
});
|
|
19
22
|
}, {}, {
|
|
23
|
+
width: 100,
|
|
24
|
+
height: 80,
|
|
20
25
|
attrs: {
|
|
21
26
|
position: "bottom",
|
|
22
27
|
closeable: false,
|
|
@@ -34,7 +34,7 @@ const AppMenuIconViewControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
34
34
|
setup() {
|
|
35
35
|
var _a;
|
|
36
36
|
const c = vue3Util.useControlController((...args) => new runtime.AppMenuController(...args));
|
|
37
|
-
const ns = vue3Util.useNamespace(
|
|
37
|
+
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase(), "-").concat((_a = c.model.controlStyle) == null ? void 0 : _a.toLowerCase()));
|
|
38
38
|
const {
|
|
39
39
|
onCustomizedClick
|
|
40
40
|
} = menuRenderUtil.useMenuRender(c);
|
|
@@ -13,7 +13,7 @@ const IBizAppMenuIconViewControl = vue3Util.withInstall(
|
|
|
13
13
|
function(v) {
|
|
14
14
|
v.component(appMenuIconView.AppMenuIconViewControl.name, appMenuIconView.AppMenuIconViewControl);
|
|
15
15
|
runtime.registerControlProvider(
|
|
16
|
-
|
|
16
|
+
"".concat(runtime.ControlType.APP_MENU, "_ICONVIEW"),
|
|
17
17
|
() => new appMenuIconView_provider.AppMenuIconViewProvider()
|
|
18
18
|
);
|
|
19
19
|
}
|
|
@@ -34,7 +34,7 @@ const AppMenuListViewControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
34
34
|
setup() {
|
|
35
35
|
var _a;
|
|
36
36
|
const c = vue3Util.useControlController((...args) => new runtime.AppMenuController(...args));
|
|
37
|
-
const ns = vue3Util.useNamespace(
|
|
37
|
+
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase(), "-").concat((_a = c.model.controlStyle) == null ? void 0 : _a.toLowerCase()));
|
|
38
38
|
const {
|
|
39
39
|
onCustomizedClick
|
|
40
40
|
} = menuRenderUtil.useMenuRender(c);
|