@ibiz-template/vue3-components 0.6.1-alpha.3 → 0.6.2-dev.0
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/index-NdPkOMvL.js +4 -0
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/{xlsx-util-E-30JfqY.js → xlsx-util-HHwgsM7j.js} +1 -1
- package/es/common/no-data/no-data.css +1 -1
- package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.d.ts +3 -0
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.d.ts +25 -0
- package/es/control/gantt/gantt.d.ts +1 -1
- package/es/control/gantt/index.d.ts +1 -1
- package/es/control/grid/grid/grid.css +1 -1
- package/es/control/grid/grid/grid.mjs +2 -2
- package/es/control/tab-exp-panel/tab-exp-panel.mjs +1 -1
- package/es/index.mjs +1 -0
- package/es/panel-component/index-actions/index-actions.css +1 -1
- package/es/panel-component/panel-index-view-search/panel-index-view-search.mjs +2 -9
- package/es/util/open-view-util/open-view-util.d.ts +1 -1
- package/es/util/open-view-util/open-view-util.mjs +6 -2
- package/es/view/login-view/login-view.mjs +3 -3
- package/es/web-app/components/modal-router-shell/modal-router-shell.mjs +4 -2
- package/es/web-app/components/router-shell/router-shell.d.ts +8 -3999
- package/es/web-app/components/router-shell/router-shell.mjs +4 -4
- package/es/web-app/guard/auth-guard/auth-guard.d.ts +88 -9
- package/es/web-app/guard/auth-guard/auth-guard.mjs +183 -134
- package/es/web-app/guard/auth-guard/dyna-auth-guard.d.ts +6 -0
- package/es/web-app/guard/auth-guard/dyna-auth-guard.mjs +67 -0
- package/es/web-app/guard/index.d.ts +1 -0
- package/es/web-app/guard/index.mjs +1 -0
- package/es/web-app/index.d.ts +1 -0
- package/es/web-app/index.mjs +2 -0
- package/es/web-app/main.d.ts +4 -1
- package/es/web-app/main.mjs +10 -1
- package/es/web-app/router/index.d.ts +2 -0
- package/es/web-app/router/index.mjs +7 -5
- package/lib/common/no-data/no-data.css +1 -1
- package/lib/control/grid/grid/grid.cjs +2 -2
- package/lib/control/grid/grid/grid.css +1 -1
- package/lib/control/tab-exp-panel/tab-exp-panel.cjs +1 -1
- package/lib/index.cjs +2 -0
- package/lib/panel-component/index-actions/index-actions.css +1 -1
- package/lib/panel-component/panel-index-view-search/panel-index-view-search.cjs +2 -9
- package/lib/util/open-view-util/open-view-util.cjs +6 -2
- package/lib/view/login-view/login-view.cjs +3 -3
- package/lib/web-app/components/modal-router-shell/modal-router-shell.cjs +4 -2
- package/lib/web-app/components/router-shell/router-shell.cjs +4 -4
- package/lib/web-app/guard/auth-guard/auth-guard.cjs +182 -133
- package/lib/web-app/guard/auth-guard/dyna-auth-guard.cjs +69 -0
- package/lib/web-app/guard/index.cjs +2 -0
- package/lib/web-app/index.cjs +3 -0
- package/lib/web-app/main.cjs +10 -1
- package/lib/web-app/router/index.cjs +7 -5
- package/package.json +6 -6
- package/dist/index-_HUj1AMZ.js +0 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-control-grid{--ibiz-control-grid-text-color:var(--ibiz-color-text-0);--ibiz-control-grid-bg-color:transparent;--ibiz-control-grid-padding:0;--ibiz-control-grid-cell-padding:var(--ibiz-spacing-tight);--ibiz-control-grid-selection-padding:var(--ibiz-spacing-base-loose);--ibiz-control-grid-row-edit-bg-color:var(--ibiz-color-fill-2);--ibiz-control-grid-row-bg-color:var(--ibiz-color-bg-1);--ibiz-control-grid-row-bg-color-2:var(--ibiz-color-bg-0);--ibiz-control-grid-now-header-height:auto;--ibiz-control-grid-header-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-header-cell-padding:var(--ibiz-control-grid-cell-padding);--ibiz-control-grid-header-height:auto;--ibiz-control-grid-header-bg-color:var(--ibiz-color-tertiary-light-hover);--ibiz-control-grid-header-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-header-font-weight:var(--ibiz-font-weight-regular);--ibiz-control-grid-content-text-color:var(--ibiz-control-grid-text-color);--ibiz-control-grid-content-row-height:48px;--ibiz-control-grid-page-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-page-height:50px;--ibiz-control-grid-page-padding:0 var(--ibiz-spacing-base-tight);--ibiz-control-grid-footer-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-footer-bg-color:var(--ibiz-color-tertiary-light-hover);--ibiz-control-grid-footer-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-footer-font-weight:var(--ibiz-font-weight-bold);position:relative;width:100%;height:100%;padding:var(--ibiz-control-grid-padding);background-color:var(--ibiz-control-grid-bg-color)}.ibiz-control-grid .el-table{--el-table-header-bg-color:var(--ibiz-control-grid-header-bg-color);--el-table-border-color:transparent}.ibiz-control-grid .el-table--border .el-table__cell{border-right:none}.ibiz-control-grid .el-table-fixed-column--left,.ibiz-control-grid .el-table-fixed-column--right{--el-bg-color:transparent}.ibiz-control-grid .el-table thead.is-group th.el-table__cell{background:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-page .ibiz-control-grid__table{height:calc(100% - var(--ibiz-control-grid-page-height))}.ibiz-control-grid.is-enable-group .el-table__indent{display:none}.ibiz-control-grid__table{width:100%;height:100%}.ibiz-control-grid__table .caret-wrapper{justify-content:center}.ibiz-control-grid__table .caret-wrapper>*+*{margin-top:3px}.ibiz-control-grid__table .sort-caret{position:initial}.ibiz-control-grid__table.el-table .el-table__cell{padding:0}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr td{background:var(--ibiz-control-grid-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:nth-child(2n) td{background-color:var(--ibiz-control-grid-row-bg-color-2)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:hover td{background-color:var(--el-table-row-hover-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.current-row td{background-color:var(--el-table-current-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.editing-row td{background-color:var(--ibiz-control-grid-row-edit-bg-color)}.ibiz-control-grid__table .el-table__header-wrapper .cell{height:var(--ibiz-control-grid-header-height);padding:var(--ibiz-control-grid-header-cell-padding);font-size:var(--ibiz-control-grid-header-font-size);font-weight:var(--ibiz-control-grid-header-font-weight);color:var(--ibiz-control-grid-header-text-color);word-break:break-word;white-space:pre-wrap}.ibiz-control-grid__table .el-table__header-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__header-wrapper .is-sortable.el-table__cell .cell{display:flex;align-items:center;justify-content:var(--ibiz-grid-column-justify-content)}.ibiz-control-grid__table .el-table__body-wrapper{color:var(--ibiz-control-grid-content-text-color);border-bottom:.1px solid var(--ibiz-color-border)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row{height:var(--ibiz-control-grid-content-row-height);cursor:pointer}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:0;padding:0}@-moz-document url-prefix(){.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:100%}}.ibiz-control-grid__table .el-table__body-wrapper .cell{display:flex;align-items:center;height:100%;padding:0}.ibiz-control-grid__table .el-table__body-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__cell.is-center{--ibiz-grid-column-text-align:center;--ibiz-grid-column-justify-content:center}.ibiz-control-grid__table .el-table__cell.is-left{--ibiz-grid-column-text-align:left;--ibiz-grid-column-justify-content:flex-start}.ibiz-control-grid__table .el-table__cell.is-right{--ibiz-grid-column-text-align:right;--ibiz-grid-column-justify-content:flex-end}.ibiz-control-grid__table .el-scrollbar__wrap{position:relative}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell{font-size:var(--ibiz-control-grid-footer-font-size);font-weight:var(--ibiz-control-grid-footer-font-weight);color:var(--ibiz-control-grid-footer-text-color);background-color:var(--ibiz-control-grid-footer-bg-color)}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell:first-child>div{display:inline;vertical-align:4px}.ibiz-control-grid .el-table td.el-table__cell,.ibiz-control-grid .el-table th.el-table__cell.is-leaf{border-bottom:none}.ibiz-control-grid .ibiz-pagination{--ibiz-pagination-height:var(--ibiz-control-grid-page-height);--ibiz-pagination-text-color:var(--ibiz-control-grid-text-color);--ibiz-pagination-padding:var(--ibiz-control-grid-page-padding)}.ibiz-control-grid.is-single-select .el-table__header-wrapper .el-table__header thead>tr th:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-single-select .el-table__body-wrapper .el-table__body tbody>tr td:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-enable-customized .el-table__header-wrapper .el-table__header thead>tr th:last-child{padding-right:var(--ibiz-spacing-base-loose)}.ibiz-control-grid.is-enable-customized .ibiz-control-grid-setting-box{display:flex;align-items:center;justify-content:flex-start;position:absolute;top:0;right:0;z-index:1;height:var(--ibiz-control-grid-now-header-height);padding-right:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-customized .ibiz-grid-setting{cursor:pointer}.ibiz-control-grid-quick-toolbar{justify-content:center}.ibiz-control-grid-batch-toolbar{position:absolute;top:0;left:54px;z-index:99;display:none;width:calc(100% - 54px);height:var(--ibiz-control-grid-now-header-height);font-size:var(--ibiz-font-size-regular);font-weight:var(--ibiz-font-weight-regular);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid-batch-toolbar.is-show{display:flex;align-items:center;justify-content:flex-start}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-separator{padding:0 var(--ibiz-spacing-base-tight)}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-content{height:100%;display:flex;align-items:center;justify-content:flex-start}
|
|
1
|
+
.ibiz-control-grid{--ibiz-control-grid-text-color:var(--ibiz-color-text-0);--ibiz-control-grid-bg-color:transparent;--ibiz-control-grid-padding:0;--ibiz-control-grid-cell-padding:var(--ibiz-spacing-tight);--ibiz-control-grid-selection-padding:var(--ibiz-spacing-base-loose);--ibiz-control-grid-row-edit-bg-color:var(--ibiz-color-fill-2);--ibiz-control-grid-row-bg-color:var(--ibiz-color-bg-1);--ibiz-control-grid-row-bg-color-2:var(--ibiz-color-bg-0);--ibiz-control-grid-now-header-height:auto;--ibiz-control-grid-header-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-header-cell-padding:var(--ibiz-control-grid-cell-padding);--ibiz-control-grid-header-height:auto;--ibiz-control-grid-header-bg-color:var(--ibiz-color-tertiary-light-hover);--ibiz-control-grid-header-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-header-font-weight:var(--ibiz-font-weight-regular);--ibiz-control-grid-content-text-color:var(--ibiz-control-grid-text-color);--ibiz-control-grid-content-row-height:48px;--ibiz-control-grid-page-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-page-height:50px;--ibiz-control-grid-page-padding:0 var(--ibiz-spacing-base-tight);--ibiz-control-grid-footer-text-color:var(--ibiz-color-text-2);--ibiz-control-grid-footer-bg-color:var(--ibiz-color-tertiary-light-hover);--ibiz-control-grid-footer-font-size:var(--ibiz-font-size-regular);--ibiz-control-grid-footer-font-weight:var(--ibiz-font-weight-bold);position:relative;width:100%;height:100%;padding:var(--ibiz-control-grid-padding);background-color:var(--ibiz-control-grid-bg-color)}.ibiz-control-grid .el-table{--el-table-header-bg-color:var(--ibiz-control-grid-header-bg-color);--el-table-border-color:transparent}.ibiz-control-grid.is-empty .el-scrollbar .el-scrollbar__view{height:100%}.ibiz-control-grid.is-empty .el-table__empty-text{display:inline-block;height:100%}.ibiz-control-grid .el-table--border .el-table__cell{border-right:none}.ibiz-control-grid .el-table-fixed-column--left,.ibiz-control-grid .el-table-fixed-column--right{--el-bg-color:transparent}.ibiz-control-grid .el-table thead.is-group th.el-table__cell{background:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-page .ibiz-control-grid__table{height:calc(100% - var(--ibiz-control-grid-page-height))}.ibiz-control-grid.is-enable-group .el-table__indent{display:none}.ibiz-control-grid__table{width:100%;height:100%}.ibiz-control-grid__table .caret-wrapper{justify-content:center}.ibiz-control-grid__table .caret-wrapper>*+*{margin-top:3px}.ibiz-control-grid__table .sort-caret{position:initial}.ibiz-control-grid__table.el-table .el-table__cell{padding:0}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr td{background:var(--ibiz-control-grid-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:nth-child(2n) td{background-color:var(--ibiz-control-grid-row-bg-color-2)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr:hover td{background-color:var(--el-table-row-hover-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.current-row td{background-color:var(--el-table-current-row-bg-color)}.ibiz-control-grid__table.el-table .el-table__body-wrapper tr.editing-row td{background-color:var(--ibiz-control-grid-row-edit-bg-color)}.ibiz-control-grid__table .el-table__header-wrapper .cell{height:var(--ibiz-control-grid-header-height);padding:var(--ibiz-control-grid-header-cell-padding);font-size:var(--ibiz-control-grid-header-font-size);font-weight:var(--ibiz-control-grid-header-font-weight);color:var(--ibiz-control-grid-header-text-color);word-break:break-word;white-space:pre-wrap}.ibiz-control-grid__table .el-table__header-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__header-wrapper .is-sortable.el-table__cell .cell{display:flex;align-items:center;justify-content:var(--ibiz-grid-column-justify-content)}.ibiz-control-grid__table .el-table__body-wrapper{color:var(--ibiz-control-grid-content-text-color);border-bottom:.1px solid var(--ibiz-color-border)}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row{height:var(--ibiz-control-grid-content-row-height);cursor:pointer}.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:0;padding:0}@-moz-document url-prefix(){.ibiz-control-grid__table .el-table__body-wrapper .el-table__row>td{height:100%}}.ibiz-control-grid__table .el-table__body-wrapper .cell{display:flex;align-items:center;height:100%;padding:0}.ibiz-control-grid__table .el-table__body-wrapper .el-table-column--selection .cell{padding:var(--ibiz-control-grid-selection-padding)}.ibiz-control-grid__table .el-table__cell.is-center{--ibiz-grid-column-text-align:center;--ibiz-grid-column-justify-content:center}.ibiz-control-grid__table .el-table__cell.is-left{--ibiz-grid-column-text-align:left;--ibiz-grid-column-justify-content:flex-start}.ibiz-control-grid__table .el-table__cell.is-right{--ibiz-grid-column-text-align:right;--ibiz-grid-column-justify-content:flex-end}.ibiz-control-grid__table .el-scrollbar__wrap{position:relative}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell{font-size:var(--ibiz-control-grid-footer-font-size);font-weight:var(--ibiz-control-grid-footer-font-weight);color:var(--ibiz-control-grid-footer-text-color);background-color:var(--ibiz-control-grid-footer-bg-color)}.ibiz-control-grid__table .el-table__footer-wrapper tfoot td.el-table__cell:first-child>div{display:inline;vertical-align:4px}.ibiz-control-grid .el-table td.el-table__cell,.ibiz-control-grid .el-table th.el-table__cell.is-leaf{border-bottom:none}.ibiz-control-grid .ibiz-pagination{--ibiz-pagination-height:var(--ibiz-control-grid-page-height);--ibiz-pagination-text-color:var(--ibiz-control-grid-text-color);--ibiz-pagination-padding:var(--ibiz-control-grid-page-padding)}.ibiz-control-grid.is-single-select .el-table__header-wrapper .el-table__header thead>tr th:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-single-select .el-table__body-wrapper .el-table__body tbody>tr td:nth-child(1){padding-left:var(--ibiz-spacing-tight)}.ibiz-control-grid.is-enable-customized .el-table__header-wrapper .el-table__header thead>tr th:last-child{padding-right:var(--ibiz-spacing-base-loose)}.ibiz-control-grid.is-enable-customized .ibiz-control-grid-setting-box{display:flex;align-items:center;justify-content:flex-start;position:absolute;top:0;right:0;z-index:1;height:var(--ibiz-control-grid-now-header-height);padding-right:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid.is-enable-customized .ibiz-grid-setting{cursor:pointer}.ibiz-control-grid-quick-toolbar{justify-content:center}.ibiz-control-grid-batch-toolbar{position:absolute;top:0;left:54px;z-index:99;display:none;width:calc(100% - 54px);height:var(--ibiz-control-grid-now-header-height);font-size:var(--ibiz-font-size-regular);font-weight:var(--ibiz-font-weight-regular);background-color:var(--ibiz-control-grid-header-bg-color)}.ibiz-control-grid-batch-toolbar.is-show{display:flex;align-items:center;justify-content:flex-start}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-separator{padding:0 var(--ibiz-spacing-base-tight)}.ibiz-control-grid-batch-toolbar .ibiz-control-grid-batch-toolbar-content{height:100%;display:flex;align-items:center;justify-content:flex-start}
|
|
@@ -50,7 +50,7 @@ const TabExpPanelControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
50
50
|
const {
|
|
51
51
|
srfnav
|
|
52
52
|
} = routePath.pathNodes[depth - 1];
|
|
53
|
-
if (srfnav && c.state.activeName && c.state.activeName !== srfnav) {
|
|
53
|
+
if (c.view.isActive && srfnav && c.state.activeName && c.state.activeName !== srfnav) {
|
|
54
54
|
c.state.activeName = srfnav;
|
|
55
55
|
c.handleTabChange();
|
|
56
56
|
}
|
package/lib/index.cjs
CHANGED
|
@@ -119,6 +119,7 @@ var openViewUtil = require('./util/open-view-util/open-view-util.cjs');
|
|
|
119
119
|
var overlayController = require('./util/overlay-controller/overlay-controller.cjs');
|
|
120
120
|
var usePagination = require('./util/pagination/use-pagination.cjs');
|
|
121
121
|
var noticeUtil = require('./util/notice-util/notice-util.cjs');
|
|
122
|
+
var authGuard = require('./web-app/guard/auth-guard/auth-guard.cjs');
|
|
122
123
|
var main = require('./web-app/main.cjs');
|
|
123
124
|
|
|
124
125
|
"use strict";
|
|
@@ -241,4 +242,5 @@ exports.OpenViewUtil = openViewUtil.OpenViewUtil;
|
|
|
241
242
|
exports.OverlayController = overlayController.OverlayController;
|
|
242
243
|
exports.usePagination = usePagination.usePagination;
|
|
243
244
|
exports.NoticeUtil = noticeUtil.NoticeUtil;
|
|
245
|
+
exports.AuthGuard = authGuard.AuthGuard;
|
|
244
246
|
exports.runApp = main.runApp;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-index-actions{width:100%;height:100%}.ibiz-index-actions>.ibiz-row{height:100%;overflow:
|
|
1
|
+
.ibiz-index-actions{width:100%;height:100%}.ibiz-index-actions>.ibiz-row{height:100%;overflow:visible}.ibiz-index-actions>.ibiz-row>.ibiz-col:first-child{overflow:visible}.ibiz-index-actions>.ibiz-row>.ibiz-col:first-child>.ibiz-panel-container>.ibiz-row{overflow:visible}.ibiz-index-actions.is-hidden{display:none}.ibiz-index-actions .el-button{font-size:28px}.ibiz-index-actions .el-button:hover{background-color:transparent}
|
|
@@ -63,7 +63,7 @@ const PanelIndexViewSearch = /* @__PURE__ */ vue.defineComponent({
|
|
|
63
63
|
}
|
|
64
64
|
return vue.createVNode("div", {
|
|
65
65
|
"class": this.classArr
|
|
66
|
-
}, [this.menuAlign === "LEFT" && !this.isCollapse
|
|
66
|
+
}, [this.menuAlign === "LEFT" && !this.isCollapse && vue.createVNode(vue.resolveComponent("el-input"), {
|
|
67
67
|
"model-value": this.query,
|
|
68
68
|
"class": this.ns.b("search"),
|
|
69
69
|
"placeholder": ibiz.i18n.t("component.indexSearch.placeholder"),
|
|
@@ -75,14 +75,7 @@ const PanelIndexViewSearch = /* @__PURE__ */ vue.defineComponent({
|
|
|
75
75
|
"name": "search"
|
|
76
76
|
}, null);
|
|
77
77
|
}
|
|
78
|
-
})
|
|
79
|
-
"class": this.ns.b("btn")
|
|
80
|
-
}, [vue.createVNode(vue.resolveComponent("el-button"), null, {
|
|
81
|
-
default: () => [vue.createVNode("ion-icon", {
|
|
82
|
-
"class": this.ns.e("search-icon"),
|
|
83
|
-
"name": "search"
|
|
84
|
-
}, null)]
|
|
85
|
-
})])]);
|
|
78
|
+
})]);
|
|
86
79
|
}
|
|
87
80
|
});
|
|
88
81
|
|
|
@@ -11,7 +11,7 @@ class OpenViewUtil {
|
|
|
11
11
|
push(path) {
|
|
12
12
|
return vue3Util.routerCallback.open(this.router, path);
|
|
13
13
|
}
|
|
14
|
-
async root(appViewId, context, params) {
|
|
14
|
+
async root(appViewId, context, params, modalOptions) {
|
|
15
15
|
const appView = await ibiz.hub.config.view.get(appViewId);
|
|
16
16
|
const { path } = await vue3Util.generateRoutePath(
|
|
17
17
|
appView,
|
|
@@ -19,7 +19,11 @@ class OpenViewUtil {
|
|
|
19
19
|
context,
|
|
20
20
|
params
|
|
21
21
|
);
|
|
22
|
-
|
|
22
|
+
if (modalOptions && modalOptions.replace === true) {
|
|
23
|
+
this.router.replace({ path });
|
|
24
|
+
} else {
|
|
25
|
+
this.router.push({ path });
|
|
26
|
+
}
|
|
23
27
|
return { ok: true };
|
|
24
28
|
}
|
|
25
29
|
async rootByModal(appViewId, context, params) {
|
|
@@ -83,9 +83,9 @@ const LoginView = /* @__PURE__ */ vue.defineComponent({
|
|
|
83
83
|
}
|
|
84
84
|
} else {
|
|
85
85
|
try {
|
|
86
|
-
const
|
|
87
|
-
if (
|
|
88
|
-
loginView.value =
|
|
86
|
+
const loginViewConfig = await ibiz.hub.config.view.get("AppLoginView");
|
|
87
|
+
if (loginViewConfig) {
|
|
88
|
+
loginView.value = loginViewConfig;
|
|
89
89
|
hasLoginView.value = true;
|
|
90
90
|
}
|
|
91
91
|
} catch (err) {
|
|
@@ -77,10 +77,12 @@ const ModalRouterShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
77
77
|
const _context = core.IBizContext.create({});
|
|
78
78
|
viewData.value.context = _context;
|
|
79
79
|
}
|
|
80
|
-
let appView =
|
|
80
|
+
let appView = viewData.value.viewConfig;
|
|
81
81
|
let component;
|
|
82
82
|
try {
|
|
83
|
-
|
|
83
|
+
if (!appView) {
|
|
84
|
+
appView = await ibiz.hub.config.view.get(appViewId);
|
|
85
|
+
}
|
|
84
86
|
component = vue3Util.createOverlayView({
|
|
85
87
|
context: viewData.value.context,
|
|
86
88
|
params: viewData.value.params,
|
|
@@ -83,22 +83,22 @@ const RouterShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
83
83
|
context,
|
|
84
84
|
params,
|
|
85
85
|
srfnav,
|
|
86
|
-
|
|
86
|
+
viewConfig
|
|
87
87
|
} = this.viewData;
|
|
88
88
|
const props = ramda.mergeDeepLeft({
|
|
89
89
|
...this.$props,
|
|
90
90
|
...this.$attrs,
|
|
91
91
|
context,
|
|
92
92
|
params,
|
|
93
|
-
|
|
94
|
-
key:
|
|
93
|
+
viewId: viewConfig.id,
|
|
94
|
+
key: viewConfig.codeName
|
|
95
95
|
}, {
|
|
96
96
|
state: {
|
|
97
97
|
srfnav
|
|
98
98
|
}
|
|
99
99
|
});
|
|
100
100
|
return vue.createVNode(vue.Fragment, null, [vue.h(vue.resolveComponent("IBizViewShell"), props, this.$slots), this.isActivated && vue.createVNode(vue.resolveComponent("router-view"), {
|
|
101
|
-
"key":
|
|
101
|
+
"key": viewConfig.codeName,
|
|
102
102
|
"name": runtime.RouteConst.ROUTE_MODAL_TAG,
|
|
103
103
|
"modal": this.routeModal
|
|
104
104
|
}, null)]);
|
|
@@ -1,39 +1,189 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var core = require('@ibiz-template/core');
|
|
4
|
-
var modelHelper = require('@ibiz-template/model-helper');
|
|
5
4
|
var ramda = require('ramda');
|
|
6
5
|
var vue3Util = require('@ibiz-template/vue3-util');
|
|
7
|
-
var index = require('../../../locale/index.cjs');
|
|
8
6
|
|
|
9
7
|
"use strict";
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
+
var __publicField = (obj, key, value) => {
|
|
11
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
12
|
+
return value;
|
|
13
|
+
};
|
|
14
|
+
class AuthGuard {
|
|
15
|
+
constructor(opts) {
|
|
16
|
+
/**
|
|
17
|
+
* 是否是全代码模式
|
|
18
|
+
* @author lxm
|
|
19
|
+
* @date 2024-02-21 11:16:08
|
|
20
|
+
* @type {boolean}
|
|
21
|
+
*/
|
|
22
|
+
__publicField(this, "isFullCode", false);
|
|
23
|
+
/**
|
|
24
|
+
* 自定义模型加载
|
|
25
|
+
* @author lxm
|
|
26
|
+
* @date 2024-02-21 11:16:17
|
|
27
|
+
* @type {ModelLoaderProvider}
|
|
28
|
+
*/
|
|
29
|
+
__publicField(this, "customModelLoader");
|
|
30
|
+
this.isFullCode = (opts == null ? void 0 : opts.isFullCode) || false;
|
|
31
|
+
this.customModelLoader = (opts == null ? void 0 : opts.customModelLoader) || void 0;
|
|
32
|
+
if (this.customModelLoader) {
|
|
33
|
+
ibiz.hub.registerModelLoaderProvider(this.customModelLoader);
|
|
34
|
+
}
|
|
14
35
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
36
|
+
/**
|
|
37
|
+
* 总的入口校验
|
|
38
|
+
* @author lxm
|
|
39
|
+
* @date 2024-02-21 10:43:55
|
|
40
|
+
* @param {boolean} notLogin
|
|
41
|
+
* @return {*} {Promise<boolean>}
|
|
42
|
+
*/
|
|
43
|
+
async verify(notLogin = true) {
|
|
44
|
+
if (notLogin) {
|
|
45
|
+
let result = true;
|
|
46
|
+
try {
|
|
47
|
+
if (ibiz.env.enableAnonymous) {
|
|
48
|
+
await this.anonymousValidate();
|
|
49
|
+
}
|
|
50
|
+
await this.appInit();
|
|
51
|
+
} catch (error) {
|
|
52
|
+
result = false;
|
|
53
|
+
ibiz.util.error.handle(error);
|
|
54
|
+
}
|
|
55
|
+
return result;
|
|
23
56
|
}
|
|
57
|
+
await this.initModel(false);
|
|
58
|
+
return true;
|
|
24
59
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
60
|
+
/**
|
|
61
|
+
* 匿名登录相关校验逻辑,不通过会抛异常
|
|
62
|
+
* @author lxm
|
|
63
|
+
* @date 2024-01-03 07:29:30
|
|
64
|
+
* @return {*} {Promise<void>}
|
|
65
|
+
*/
|
|
66
|
+
async anonymousValidate() {
|
|
67
|
+
const authInfo = ibiz.auth.getAuthInfo();
|
|
68
|
+
if (authInfo && !authInfo.isAnonymous) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
await this.initModel(false);
|
|
72
|
+
const urlPaths = window.location.hash.split("/");
|
|
73
|
+
const viewName = urlPaths[urlPaths.length - 2];
|
|
74
|
+
let viewModel;
|
|
75
|
+
if (viewName !== "#") {
|
|
76
|
+
try {
|
|
77
|
+
viewModel = await ibiz.hub.getAppView(viewName);
|
|
78
|
+
} catch (error) {
|
|
79
|
+
ibiz.log.error(error);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (!viewModel) {
|
|
83
|
+
ibiz.log.error(
|
|
84
|
+
"\u627E\u4E0D\u5230\u89C6\u56FE\u6A21\u578B".concat(viewName, ",\u8BF7\u786E\u4FDD\u8BE5\u89C6\u56FE\u914D\u7F6E\u4E86\u533F\u540D\u8BBF\u95EE\u548C\u7528\u6237\u5F15\u7528")
|
|
85
|
+
);
|
|
86
|
+
this.throw401();
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
if (viewModel.accUserMode !== 3) {
|
|
90
|
+
this.throw401();
|
|
91
|
+
}
|
|
92
|
+
if (!authInfo) {
|
|
93
|
+
const loginResult = await ibiz.auth.anonymousLogin();
|
|
94
|
+
if (!loginResult) {
|
|
95
|
+
throw new core.RuntimeError("\u533F\u540D\u7528\u6237\u767B\u5F55\u5931\u8D25");
|
|
96
|
+
}
|
|
97
|
+
}
|
|
32
98
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
99
|
+
/**
|
|
100
|
+
* 应用参数初始化
|
|
101
|
+
*
|
|
102
|
+
* @author chitanda
|
|
103
|
+
* @date 2022-07-20 19:07:54
|
|
104
|
+
* @return {*} {Promise<void>}
|
|
105
|
+
*/
|
|
106
|
+
async appInit() {
|
|
107
|
+
if (ibiz.env.isSaaSMode === true) {
|
|
108
|
+
await this.loadOrgData();
|
|
109
|
+
}
|
|
110
|
+
await this.loadAppData();
|
|
111
|
+
await this.initModel();
|
|
112
|
+
await ibiz.auth.extendLogin();
|
|
113
|
+
await ibiz.hub.notice.init();
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* 初始化模型
|
|
117
|
+
* @author lxm
|
|
118
|
+
* @date 2024-02-21 10:48:36
|
|
119
|
+
* @param {boolean} [permission=true]
|
|
120
|
+
* @return {*} {Promise<void>}
|
|
121
|
+
*/
|
|
122
|
+
async initModel(_permission = true) {
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* 加载应用数据
|
|
126
|
+
*
|
|
127
|
+
* @author chitanda
|
|
128
|
+
* @date 2022-07-20 20:07:50
|
|
129
|
+
* @return {*} {Promise<void>}
|
|
130
|
+
*/
|
|
131
|
+
async loadAppData() {
|
|
132
|
+
const res = await ibiz.net.get("/appdata");
|
|
133
|
+
if (res.ok) {
|
|
134
|
+
ibiz.appData = res.data;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* 加载组织数据
|
|
139
|
+
*
|
|
140
|
+
* @author chitanda
|
|
141
|
+
* @date 2022-07-20 20:07:44
|
|
142
|
+
* @return {*} {Promise<void>}
|
|
143
|
+
*/
|
|
144
|
+
async loadOrgData() {
|
|
145
|
+
const res = await ibiz.net.get("/uaa/getbydcsystem/".concat(ibiz.env.dcSystem));
|
|
146
|
+
if (res.ok) {
|
|
147
|
+
const orgDataItems = res.data;
|
|
148
|
+
if (orgDataItems) {
|
|
149
|
+
const [data] = orgDataItems;
|
|
150
|
+
ibiz.orgData = data;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
async initTheme(appModel) {
|
|
155
|
+
if (!appModel.appUIThemes) {
|
|
156
|
+
const module = await import('@ibiz-template/web-theme');
|
|
157
|
+
const theme = module.default || module;
|
|
158
|
+
vue3Util.AppHooks.useComponent.callSync(null, theme);
|
|
159
|
+
} else {
|
|
160
|
+
await this.loadTheme();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* 加载主题插件
|
|
165
|
+
*
|
|
166
|
+
* @author chitanda
|
|
167
|
+
* @date 2023-12-03 01:12:38
|
|
168
|
+
* @protected
|
|
169
|
+
* @return {*} {Promise<void>}
|
|
170
|
+
*/
|
|
171
|
+
async loadTheme() {
|
|
172
|
+
const app = ibiz.hub.getApp();
|
|
173
|
+
const uiThemes = app.model.appUIThemes || [];
|
|
174
|
+
if (uiThemes.length > 0) {
|
|
175
|
+
const theme = uiThemes[0];
|
|
176
|
+
await ibiz.util.theme.loadTheme(theme);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* 根据应用自定义参数解析成环境变量
|
|
181
|
+
*
|
|
182
|
+
* @author chitanda
|
|
183
|
+
* @date 2023-11-24 19:11:50
|
|
184
|
+
* @return {*} {Promise<void>}
|
|
185
|
+
*/
|
|
186
|
+
async initEnvironment(app) {
|
|
37
187
|
const userParam = app.userParam;
|
|
38
188
|
if (userParam) {
|
|
39
189
|
Object.keys(userParam).forEach((key) => {
|
|
@@ -56,116 +206,15 @@ async function initEnvironment(helper) {
|
|
|
56
206
|
ibiz.log.setLevel(ibiz.env.logLevel);
|
|
57
207
|
}
|
|
58
208
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
ibiz.hub.reset();
|
|
65
|
-
const helper = new modelHelper.ModelHelper(
|
|
66
|
-
async (url, params) => {
|
|
67
|
-
const res = await ibiz.net.get(
|
|
68
|
-
"".concat(ibiz.env.remoteModelUrl).concat(url),
|
|
69
|
-
params,
|
|
70
|
-
permission ? {} : { srfdcsystem: ibiz.env.dcSystem }
|
|
71
|
-
);
|
|
72
|
-
return res.data;
|
|
73
|
-
},
|
|
74
|
-
ibiz.env.appId,
|
|
75
|
-
permission
|
|
76
|
-
);
|
|
77
|
-
await initEnvironment(helper);
|
|
78
|
-
const app = await ibiz.hub.getAppAsync(ibiz.env.appId);
|
|
79
|
-
const appModel = app.model;
|
|
80
|
-
ibiz.env.isMob = appModel.mobileApp === true;
|
|
81
|
-
if (ibiz.env.isEnableMultiLan) {
|
|
82
|
-
const lang = ibiz.i18n.getLang();
|
|
83
|
-
const m = await helper.getPSAppLang(lang.replace("-", "_").toUpperCase());
|
|
84
|
-
const items = m.languageItems || [];
|
|
85
|
-
const data = {};
|
|
86
|
-
items.forEach((item) => {
|
|
87
|
-
data[item.lanResTag] = item.content;
|
|
88
|
-
});
|
|
89
|
-
index.i18n.global.mergeLocaleMessage(lang, data);
|
|
90
|
-
}
|
|
91
|
-
if (!appModel.appUIThemes) {
|
|
92
|
-
const module = await import('@ibiz-template/web-theme');
|
|
93
|
-
const theme = module.default || module;
|
|
94
|
-
vue3Util.AppHooks.useComponent.callSync(null, theme);
|
|
95
|
-
} else {
|
|
96
|
-
await loadTheme();
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
noPermissionModel = permission;
|
|
100
|
-
hasModelInit = true;
|
|
101
|
-
}
|
|
102
|
-
async function appInit() {
|
|
103
|
-
if (ibiz.env.isSaaSMode === true) {
|
|
104
|
-
await loadOrgData();
|
|
105
|
-
}
|
|
106
|
-
await loadAppData();
|
|
107
|
-
await initModel();
|
|
108
|
-
await ibiz.auth.extendLogin();
|
|
109
|
-
await ibiz.hub.notice.init();
|
|
110
|
-
}
|
|
111
|
-
function throw401() {
|
|
112
|
-
throw new core.HttpError({
|
|
113
|
-
response: {
|
|
114
|
-
status: 401,
|
|
115
|
-
statusText: "\u65E0\u6743\u9650\u8BBF\u95EE\uFF01"
|
|
116
|
-
}
|
|
117
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
async function anonymousValidate() {
|
|
121
|
-
const authInfo = ibiz.auth.getAuthInfo();
|
|
122
|
-
if (authInfo && !authInfo.isAnonymous) {
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
await initModel(false);
|
|
126
|
-
const urlPaths = window.location.hash.split("/");
|
|
127
|
-
const viewName = urlPaths[urlPaths.length - 2];
|
|
128
|
-
let viewModel;
|
|
129
|
-
if (viewName !== "#") {
|
|
130
|
-
try {
|
|
131
|
-
viewModel = await ibiz.hub.getAppView(viewName);
|
|
132
|
-
} catch (error) {
|
|
133
|
-
ibiz.log.error(error);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
if (!viewModel) {
|
|
137
|
-
ibiz.log.error(
|
|
138
|
-
"\u627E\u4E0D\u5230\u89C6\u56FE\u6A21\u578B".concat(viewName, ",\u8BF7\u786E\u4FDD\u8BE5\u89C6\u56FE\u914D\u7F6E\u4E86\u533F\u540D\u8BBF\u95EE\u548C\u7528\u6237\u5F15\u7528")
|
|
139
|
-
);
|
|
140
|
-
throw401();
|
|
141
|
-
return;
|
|
142
|
-
}
|
|
143
|
-
if (viewModel.accUserMode !== 3) {
|
|
144
|
-
throw401();
|
|
145
|
-
}
|
|
146
|
-
if (!authInfo) {
|
|
147
|
-
const loginResult = await ibiz.auth.anonymousLogin();
|
|
148
|
-
if (!loginResult) {
|
|
149
|
-
throw new core.RuntimeError("\u533F\u540D\u7528\u6237\u767B\u5F55\u5931\u8D25");
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
async function AuthGuard(notLogin = true) {
|
|
154
|
-
if (notLogin) {
|
|
155
|
-
let result = true;
|
|
156
|
-
try {
|
|
157
|
-
if (ibiz.env.enableAnonymous) {
|
|
158
|
-
await anonymousValidate();
|
|
209
|
+
throw401() {
|
|
210
|
+
throw new core.HttpError({
|
|
211
|
+
response: {
|
|
212
|
+
status: 401,
|
|
213
|
+
statusText: "\u65E0\u6743\u9650\u8BBF\u95EE\uFF01"
|
|
159
214
|
}
|
|
160
|
-
|
|
161
|
-
}
|
|
162
|
-
result = false;
|
|
163
|
-
ibiz.util.error.handle(error);
|
|
164
|
-
}
|
|
165
|
-
return result;
|
|
215
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
216
|
+
});
|
|
166
217
|
}
|
|
167
|
-
await initModel(false);
|
|
168
|
-
return true;
|
|
169
218
|
}
|
|
170
219
|
|
|
171
220
|
exports.AuthGuard = AuthGuard;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var modelHelper = require('@ibiz-template/model-helper');
|
|
4
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
|
+
var authGuard = require('./auth-guard.cjs');
|
|
6
|
+
var index = require('../../../locale/index.cjs');
|
|
7
|
+
|
|
8
|
+
"use strict";
|
|
9
|
+
var __defProp = Object.defineProperty;
|
|
10
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
|
+
var __publicField = (obj, key, value) => {
|
|
12
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
13
|
+
return value;
|
|
14
|
+
};
|
|
15
|
+
class DynaAuthGuard extends authGuard.AuthGuard {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
__publicField(this, "hasModelInit", false);
|
|
19
|
+
__publicField(this, "noPermissionModel", false);
|
|
20
|
+
}
|
|
21
|
+
async initModel(permission = true) {
|
|
22
|
+
if (!this.hasModelInit || this.hasModelInit && this.noPermissionModel !== permission) {
|
|
23
|
+
ibiz.hub.reset();
|
|
24
|
+
const helper = new modelHelper.ModelHelper(
|
|
25
|
+
async (url, params) => {
|
|
26
|
+
const res = await ibiz.net.get(
|
|
27
|
+
"".concat(ibiz.env.remoteModelUrl).concat(url),
|
|
28
|
+
params,
|
|
29
|
+
permission ? {} : { srfdcsystem: ibiz.env.dcSystem }
|
|
30
|
+
);
|
|
31
|
+
return res.data;
|
|
32
|
+
},
|
|
33
|
+
ibiz.env.appId,
|
|
34
|
+
permission
|
|
35
|
+
);
|
|
36
|
+
const tempApp = await helper.getAppModel();
|
|
37
|
+
await this.initEnvironment(tempApp);
|
|
38
|
+
const app = await ibiz.hub.getAppAsync(ibiz.env.appId);
|
|
39
|
+
const appModel = app.model;
|
|
40
|
+
ibiz.env.isMob = appModel.mobileApp === true;
|
|
41
|
+
if (ibiz.env.isEnableMultiLan) {
|
|
42
|
+
const lang = ibiz.i18n.getLang();
|
|
43
|
+
const m = await helper.getPSAppLang(
|
|
44
|
+
lang.replace("-", "_").toUpperCase()
|
|
45
|
+
);
|
|
46
|
+
const items = m.languageItems || [];
|
|
47
|
+
const data = {};
|
|
48
|
+
items.forEach((item) => {
|
|
49
|
+
data[item.lanResTag] = item.content;
|
|
50
|
+
});
|
|
51
|
+
index.i18n.global.mergeLocaleMessage(lang, data);
|
|
52
|
+
}
|
|
53
|
+
if (!appModel.appUIThemes) {
|
|
54
|
+
const module = await import('@ibiz-template/web-theme');
|
|
55
|
+
const theme = module.default || module;
|
|
56
|
+
vue3Util.AppHooks.useComponent.callSync(null, theme);
|
|
57
|
+
} else {
|
|
58
|
+
await this.loadTheme();
|
|
59
|
+
}
|
|
60
|
+
if (app.model.title) {
|
|
61
|
+
ibiz.util.setBrowserTitle("");
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
this.noPermissionModel = permission;
|
|
65
|
+
this.hasModelInit = true;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
exports.DynaAuthGuard = DynaAuthGuard;
|
package/lib/web-app/index.cjs
CHANGED
package/lib/web-app/main.cjs
CHANGED
|
@@ -9,6 +9,8 @@ var App = require('./App.cjs');
|
|
|
9
9
|
require('./util/index.cjs');
|
|
10
10
|
var index = require('./router/index.cjs');
|
|
11
11
|
require('../util/index.cjs');
|
|
12
|
+
require('./guard/index.cjs');
|
|
13
|
+
var dynaAuthGuard = require('./guard/auth-guard/dyna-auth-guard.cjs');
|
|
12
14
|
var openViewUtil = require('../util/open-view-util/open-view-util.cjs');
|
|
13
15
|
var messageUtil = require('../util/message-util/message-util.cjs');
|
|
14
16
|
var modalUtil = require('../util/modal-util/modal-util.cjs');
|
|
@@ -20,7 +22,7 @@ var overlayController = require('../util/overlay-controller/overlay-controller.c
|
|
|
20
22
|
var unauthorizedHandler = require('./util/unauthorized-handler/unauthorized-handler.cjs');
|
|
21
23
|
|
|
22
24
|
"use strict";
|
|
23
|
-
async function runApp(plugins) {
|
|
25
|
+
async function runApp(plugins, opts) {
|
|
24
26
|
vue3Util.AppHooks.createApp.tap((_, app2) => {
|
|
25
27
|
if (plugins) {
|
|
26
28
|
plugins.forEach((plugin) => {
|
|
@@ -45,6 +47,13 @@ async function runApp(plugins) {
|
|
|
45
47
|
});
|
|
46
48
|
});
|
|
47
49
|
await attachEnvironmentConfig.attachEnvironmentConfig();
|
|
50
|
+
let authGuard;
|
|
51
|
+
if (opts == null ? void 0 : opts.getAuthGuard) {
|
|
52
|
+
authGuard = opts.getAuthGuard();
|
|
53
|
+
} else {
|
|
54
|
+
authGuard = new dynaAuthGuard.DynaAuthGuard();
|
|
55
|
+
}
|
|
56
|
+
index.AppRouter.setAuthGuard((notLogin) => authGuard.verify(notLogin));
|
|
48
57
|
app.use(index.AppRouter.getRouter());
|
|
49
58
|
ibiz.openView = new openViewUtil.OpenViewUtil(index.AppRouter.getRouter());
|
|
50
59
|
ibiz.message = new messageUtil.MessageUtil();
|