@maketribe/ms-app 3.2.14 → 3.2.15
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/cjs/core/PageManager.js +2 -0
- package/dist/cjs/core/PageManager.js.map +1 -1
- package/dist/cjs/init-application.js +8 -6
- package/dist/cjs/init-application.js.map +1 -1
- package/dist/esm/core/PageManager.js +2 -0
- package/dist/esm/core/PageManager.js.map +1 -1
- package/dist/esm/init-application.js +8 -6
- package/dist/esm/init-application.js.map +1 -1
- package/dist/types/core/PageManager.d.ts +1 -0
- package/package.json +3 -3
|
@@ -11,6 +11,7 @@ class PageManager {
|
|
|
11
11
|
__publicField(this, "extendsPages", []);
|
|
12
12
|
__publicField(this, "msAppClient", null);
|
|
13
13
|
__publicField(this, "msAppClientChangeEvent", new utils.Event());
|
|
14
|
+
__publicField(this, "afterInitdEvent", new utils.Event());
|
|
14
15
|
__publicField(this, "msAppClientDisposable", null);
|
|
15
16
|
}
|
|
16
17
|
setMSAppCLient(msAppClient) {
|
|
@@ -60,6 +61,7 @@ class PageManager {
|
|
|
60
61
|
},
|
|
61
62
|
component: () => Promise.resolve().then(() => /* @__PURE__ */ _interopNamespaceDefaultOnly(require("../page/signup/index.vue.js")))
|
|
62
63
|
});
|
|
64
|
+
this.afterInitdEvent.emit();
|
|
63
65
|
this.msAppClientChangeEvent.on(({ msAppClient }) => {
|
|
64
66
|
var _a, _b;
|
|
65
67
|
if (!msAppClient) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageManager.js","sources":["../../../src/core/PageManager.ts"],"sourcesContent":["import { RouteRecordRaw } from \"vue-router\";\nimport type { MSAppClient } from \"./MSAppClient\";\nimport { Disposable, Event, createDisposable } from \"@maketribe/utils\";\n\nexport class PageManager {\n normalPages: RouteRecordRaw[] = [];\n\n extendsPages: RouteRecordRaw[] = [];\n\n msAppClient: MSAppClient | null = null;\n\n msAppClientChangeEvent: Event<{ msAppClient: MSAppClient | null }> =\n new Event();\n\n msAppClientDisposable: Disposable | null = null;\n\n setMSAppCLient(msAppClient: MSAppClient | null) {\n this.msAppClientDisposable?.dispose();\n\n this.msAppClientDisposable = new Disposable();\n\n this.msAppClient = msAppClient;\n\n this.msAppClientChangeEvent.emit({ msAppClient });\n }\n\n addNormalPage(normalPage: RouteRecordRaw) {\n const index = this.normalPages.findIndex(\n (item) => item.name === normalPage.name\n );\n\n if (index > -1) {\n this.normalPages.splice(index, 1);\n }\n\n this.normalPages.push(normalPage);\n }\n\n addExtendsPage(extendsPage: RouteRecordRaw) {\n const index = this.extendsPages.findIndex(\n (item) => item.name === extendsPage.name\n );\n\n if (index > -1) {\n this.extendsPages.splice(index, 1);\n }\n\n this.extendsPages.push(extendsPage);\n }\n\n init() {\n this.addNormalPage({\n name: \"mk-ms-layout\",\n path: \"/\",\n component: () => import(\"../page/index.vue\"),\n });\n\n this.addNormalPage({\n name: \"login\",\n path: \"/login\",\n meta: {\n isAuthorization: false,\n },\n component: () => import(\"../page/login/index.vue\"),\n });\n\n this.addNormalPage({\n name: \"signup\",\n path: \"/signup\",\n meta: {\n isAuthorization: false,\n },\n component: () => import(\"../page/signup/index.vue\"),\n });\n\n this.msAppClientChangeEvent.on(({ msAppClient }) => {\n if (!msAppClient) {\n return;\n }\n\n const vueRouter = msAppClient.vueRouter;\n const vueRoutes = vueRouter.getRoutes();\n\n const addedNormalPageNames: string[] = [];\n\n for (const normalPage of this.normalPages) {\n const vueRoute = vueRoutes.find(\n (vueRoute) => vueRoute.name === normalPage.name\n );\n\n if (!vueRoute) {\n addedNormalPageNames.push(normalPage.name as string);\n vueRouter.addRoute(normalPage);\n }\n }\n\n this.msAppClientDisposable?.register(\n createDisposable(() => {\n for (const addedNormalPageName of addedNormalPageNames) {\n vueRouter.removeRoute(addedNormalPageName);\n }\n })\n );\n\n this.msAppClientDisposable?.register(\n msAppClient.beforeInitUserSessionEvent.on(({ userSession }) => {\n if (!userSession) {\n return;\n }\n\n userSession.beforeInitRouterEvent.on(() => {\n const router = userSession.router;\n\n const addedExtendsPageNames: string[] = [];\n\n for (const extendsPage of this.extendsPages) {\n const routeInfo = router.getRouteByName(\n extendsPage.name as string\n );\n\n if (!routeInfo) {\n continue;\n }\n\n const vueRoute = vueRoutes.find(\n (vueRoute) => vueRoute.name === extendsPage.name\n );\n\n if (!vueRoute) {\n extendsPage.path = routeInfo.route || extendsPage.path;\n addedExtendsPageNames.push(extendsPage.name as string);\n vueRouter.addRoute(\"mk-ms-layout\", extendsPage);\n }\n }\n\n if (!this.extendsPages.find((page) => page.name === \"notFound\")) {\n this.addExtendsPage({\n name: \"notFound\",\n // path: \":pathMatch(.*)*\",\n path: \"\",\n component: () => import(\"../page/index/404.vue\"),\n });\n }\n\n userSession.register(\n createDisposable(() => {\n for (const addedExtendsPageName of addedExtendsPageNames) {\n vueRouter.removeRoute(addedExtendsPageName);\n }\n })\n );\n });\n })\n );\n });\n }\n}\n"],"names":["Event","Disposable","vueRoute","createDisposable"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PageManager.js","sources":["../../../src/core/PageManager.ts"],"sourcesContent":["import { RouteRecordRaw } from \"vue-router\";\nimport type { MSAppClient } from \"./MSAppClient\";\nimport { Disposable, Event, createDisposable } from \"@maketribe/utils\";\n\nexport class PageManager {\n normalPages: RouteRecordRaw[] = [];\n\n extendsPages: RouteRecordRaw[] = [];\n\n msAppClient: MSAppClient | null = null;\n\n msAppClientChangeEvent: Event<{ msAppClient: MSAppClient | null }> =\n new Event();\n\n afterInitdEvent: Event = new Event();\n\n msAppClientDisposable: Disposable | null = null;\n\n setMSAppCLient(msAppClient: MSAppClient | null) {\n this.msAppClientDisposable?.dispose();\n\n this.msAppClientDisposable = new Disposable();\n\n this.msAppClient = msAppClient;\n\n this.msAppClientChangeEvent.emit({ msAppClient });\n }\n\n addNormalPage(normalPage: RouteRecordRaw) {\n const index = this.normalPages.findIndex(\n (item) => item.name === normalPage.name\n );\n\n if (index > -1) {\n this.normalPages.splice(index, 1);\n }\n\n this.normalPages.push(normalPage);\n }\n\n addExtendsPage(extendsPage: RouteRecordRaw) {\n const index = this.extendsPages.findIndex(\n (item) => item.name === extendsPage.name\n );\n\n if (index > -1) {\n this.extendsPages.splice(index, 1);\n }\n\n this.extendsPages.push(extendsPage);\n }\n\n init() {\n this.addNormalPage({\n name: \"mk-ms-layout\",\n path: \"/\",\n component: () => import(\"../page/index.vue\"),\n });\n\n this.addNormalPage({\n name: \"login\",\n path: \"/login\",\n meta: {\n isAuthorization: false,\n },\n component: () => import(\"../page/login/index.vue\"),\n });\n\n this.addNormalPage({\n name: \"signup\",\n path: \"/signup\",\n meta: {\n isAuthorization: false,\n },\n component: () => import(\"../page/signup/index.vue\"),\n });\n\n this.afterInitdEvent.emit();\n\n this.msAppClientChangeEvent.on(({ msAppClient }) => {\n if (!msAppClient) {\n return;\n }\n\n const vueRouter = msAppClient.vueRouter;\n const vueRoutes = vueRouter.getRoutes();\n\n const addedNormalPageNames: string[] = [];\n\n for (const normalPage of this.normalPages) {\n const vueRoute = vueRoutes.find(\n (vueRoute) => vueRoute.name === normalPage.name\n );\n\n if (!vueRoute) {\n addedNormalPageNames.push(normalPage.name as string);\n vueRouter.addRoute(normalPage);\n }\n }\n\n this.msAppClientDisposable?.register(\n createDisposable(() => {\n for (const addedNormalPageName of addedNormalPageNames) {\n vueRouter.removeRoute(addedNormalPageName);\n }\n })\n );\n\n this.msAppClientDisposable?.register(\n msAppClient.beforeInitUserSessionEvent.on(({ userSession }) => {\n if (!userSession) {\n return;\n }\n\n userSession.beforeInitRouterEvent.on(() => {\n const router = userSession.router;\n\n const addedExtendsPageNames: string[] = [];\n\n for (const extendsPage of this.extendsPages) {\n const routeInfo = router.getRouteByName(\n extendsPage.name as string\n );\n\n if (!routeInfo) {\n continue;\n }\n\n const vueRoute = vueRoutes.find(\n (vueRoute) => vueRoute.name === extendsPage.name\n );\n\n if (!vueRoute) {\n extendsPage.path = routeInfo.route || extendsPage.path;\n addedExtendsPageNames.push(extendsPage.name as string);\n vueRouter.addRoute(\"mk-ms-layout\", extendsPage);\n }\n }\n\n if (!this.extendsPages.find((page) => page.name === \"notFound\")) {\n this.addExtendsPage({\n name: \"notFound\",\n // path: \":pathMatch(.*)*\",\n path: \"\",\n component: () => import(\"../page/index/404.vue\"),\n });\n }\n\n userSession.register(\n createDisposable(() => {\n for (const addedExtendsPageName of addedExtendsPageNames) {\n vueRouter.removeRoute(addedExtendsPageName);\n }\n })\n );\n });\n })\n );\n });\n }\n}\n"],"names":["Event","Disposable","vueRoute","createDisposable"],"mappings":"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"}
|
|
@@ -55,13 +55,15 @@ const initApplication = async (options) => {
|
|
|
55
55
|
};
|
|
56
56
|
})
|
|
57
57
|
);
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
58
|
+
msAppClient$1.pageManager.afterInitdEvent.on(() => {
|
|
59
|
+
for (const route of routes) {
|
|
60
|
+
if (route.key.startsWith("index")) {
|
|
61
|
+
msAppClient$1.pageManager.addExtendsPage(route);
|
|
62
|
+
} else {
|
|
63
|
+
msAppClient$1.pageManager.addNormalPage(route);
|
|
64
|
+
}
|
|
63
65
|
}
|
|
64
|
-
}
|
|
66
|
+
});
|
|
65
67
|
await msAppClient$1.init();
|
|
66
68
|
app.use(msAppClient$1.vueRouter);
|
|
67
69
|
return msAppClient$1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-application.js","sources":["../../src/init-application.ts"],"sourcesContent":["import { App, reactive } from \"vue\";\nimport {\n createRouter,\n createWebHashHistory,\n Router as VueRouter,\n} from \"vue-router\";\nimport { DataTableHeaderComponents, MSAppClient } from \"./core\";\nimport { HttpRequest, WebHttpRequest } from \"@maketribe/request\";\nimport { MSAPPCLIENT_CONTEXT_KEY } from \"./tokens\";\nimport msModule from \"./modules/ms\";\nimport cmsModule from \"./modules/cms\";\nimport { installer } from
|
|
1
|
+
{"version":3,"file":"init-application.js","sources":["../../src/init-application.ts"],"sourcesContent":["import { App, reactive } from \"vue\";\nimport {\n createRouter,\n createWebHashHistory,\n Router as VueRouter,\n} from \"vue-router\";\nimport { DataTableHeaderComponents, MSAppClient } from \"./core\";\nimport { HttpRequest, WebHttpRequest } from \"@maketribe/request\";\nimport { MSAPPCLIENT_CONTEXT_KEY } from \"./tokens\";\nimport msModule from \"./modules/ms\";\nimport cmsModule from \"./modules/cms\";\nimport { installer } from \"./installer\";\n\nimport { generateRoutesFromFiles } from \"./utils\";\nimport {\n DataFilterComponents,\n DataFormComponents,\n DataTableComponents,\n} from \"./core\";\n\nexport type InitMsApplicationOptions = {\n routes: any;\n vueRouter?: VueRouter;\n app: App;\n appID: string;\n logo?: string;\n projectName?: string;\n locale?: string;\n httpRequest?: HttpRequest;\n};\n\nexport const initApplication = async (options: InitMsApplicationOptions) => {\n const app = options.app;\n\n app.use(installer);\n\n const vueRouter =\n options.vueRouter ??\n createRouter({\n history: createWebHashHistory(),\n routes: [],\n });\n\n const msAppClient = reactive(\n new MSAppClient({\n app,\n appID: options!.appID,\n logo: options!.logo ?? \"\",\n projectName: options!.projectName ?? \"\",\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\n origin: location.origin,\n locale: options!.locale,\n vueRouter,\n dataTableComponents: new DataTableComponents(),\n dataTableHeaderComponents: new DataTableHeaderComponents(),\n dataFormComponents: new DataFormComponents(),\n dataFilterComponents: new DataFilterComponents(),\n whereFilterComponents: new DataFilterComponents(),\n })\n ) as unknown as MSAppClient;\n\n msAppClient.addModule(msModule);\n msAppClient.addModule(cmsModule);\n\n app.provide(MSAPPCLIENT_CONTEXT_KEY, { msAppClient });\n\n MSAppClient.instance = msAppClient;\n\n (window as any).msAppClient = msAppClient;\n\n const routes = generateRoutesFromFiles(\n Object.keys(options.routes).map((key) => {\n return {\n path: key.replace(/^\\.\\/pages\\/(.+)\\.vue$/, (_, g) => g),\n module: options.routes[key]?.default || options.routes[key],\n };\n })\n );\n\n msAppClient.pageManager.afterInitdEvent.on(() => {\n for (const route of routes) {\n if (route.key.startsWith(\"index\")) {\n msAppClient.pageManager.addExtendsPage(route);\n } else {\n msAppClient.pageManager.addNormalPage(route);\n }\n }\n });\n\n await msAppClient.init();\n\n app.use(msAppClient.vueRouter);\n\n return msAppClient;\n};\n"],"names":["installer","vueRouter","createRouter","createWebHashHistory","msAppClient","reactive","MSAppClient","WebHttpRequest","DataTableComponents","DataTableHeaderComponents","DataFormComponents","DataFilterComponents","msModule","cmsModule","MSAPPCLIENT_CONTEXT_KEY","generateRoutesFromFiles"],"mappings":";;;;;;;;;;;;;;;;;;;AA+Ba,MAAA,kBAAkB,OAAO,YAAsC;AAC1E,QAAM,MAAM,QAAQ;AAEpB,MAAI,IAAIA,UAAAA,SAAS;AAEX,QAAAC,cACJ,QAAQ,aACRC,uBAAa;AAAA,IACX,SAASC,UAAAA,qBAAqB;AAAA,IAC9B,QAAQ,CAAC;AAAA,EAAA,CACV;AAEH,QAAMC,gBAAcC,IAAA;AAAA,IAClB,IAAIC,wBAAY;AAAA,MACd;AAAA,MACA,OAAO,QAAS;AAAA,MAChB,MAAM,QAAS,QAAQ;AAAA,MACvB,aAAa,QAAS,eAAe;AAAA,MACrC,aAAa,QAAQ,eAAe,IAAIC,uBAAe;AAAA,MACvD,QAAQ,SAAS;AAAA,MACjB,QAAQ,QAAS;AAAA,MAAA,WACjBN;AAAAA,MACA,qBAAqB,IAAIO,oBAAAA,oBAAoB;AAAA,MAC7C,2BAA2B,IAAIC,0BAAAA,0BAA0B;AAAA,MACzD,oBAAoB,IAAIC,mBAAAA,mBAAmB;AAAA,MAC3C,sBAAsB,IAAIC,qBAAAA,qBAAqB;AAAA,MAC/C,uBAAuB,IAAIA,qBAAAA,qBAAqB;AAAA,IAAA,CACjD;AAAA,EAAA;AAGHP,gBAAY,UAAUQ,MAAAA,OAAQ;AAC9BR,gBAAY,UAAUS,QAAAA,OAAS;AAE/B,MAAI,QAAQC,YAAAA,yBAAyB,EAAEV,aAAAA,cAAa,CAAA;AAEpDE,cAAA,YAAY,WAAWF;AAEtB,SAAe,cAAcA;AAE9B,QAAM,SAASW,MAAA;AAAA,IACb,OAAO,KAAK,QAAQ,MAAM,EAAE,IAAI,CAAC,QAAQ;;AAChC,aAAA;AAAA,QACL,MAAM,IAAI,QAAQ,0BAA0B,CAAC,GAAG,MAAM,CAAC;AAAA,QACvD,UAAQ,aAAQ,OAAO,GAAG,MAAlB,mBAAqB,YAAW,QAAQ,OAAO,GAAG;AAAA,MAAA;AAAA,IAC5D,CACD;AAAA,EAAA;AAGSX,gBAAA,YAAY,gBAAgB,GAAG,MAAM;AAC/C,eAAW,SAAS,QAAQ;AAC1B,UAAI,MAAM,IAAI,WAAW,OAAO,GAAG;AACrBA,sBAAA,YAAY,eAAe,KAAK;AAAA,MAAA,OACvC;AACOA,sBAAA,YAAY,cAAc,KAAK;AAAA,MAC7C;AAAA,IACF;AAAA,EAAA,CACD;AAED,QAAMA,cAAY;AAEd,MAAA,IAAIA,cAAY,SAAS;AAEtB,SAAAA;AACT;;"}
|
|
@@ -8,6 +8,7 @@ class PageManager {
|
|
|
8
8
|
__publicField(this, "extendsPages", []);
|
|
9
9
|
__publicField(this, "msAppClient", null);
|
|
10
10
|
__publicField(this, "msAppClientChangeEvent", new Event());
|
|
11
|
+
__publicField(this, "afterInitdEvent", new Event());
|
|
11
12
|
__publicField(this, "msAppClientDisposable", null);
|
|
12
13
|
}
|
|
13
14
|
setMSAppCLient(msAppClient) {
|
|
@@ -57,6 +58,7 @@ class PageManager {
|
|
|
57
58
|
},
|
|
58
59
|
component: () => import("../page/signup/index.vue.js")
|
|
59
60
|
});
|
|
61
|
+
this.afterInitdEvent.emit();
|
|
60
62
|
this.msAppClientChangeEvent.on(({ msAppClient }) => {
|
|
61
63
|
var _a, _b;
|
|
62
64
|
if (!msAppClient) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageManager.js","sources":["../../../src/core/PageManager.ts"],"sourcesContent":["import { RouteRecordRaw } from \"vue-router\";\nimport type { MSAppClient } from \"./MSAppClient\";\nimport { Disposable, Event, createDisposable } from \"@maketribe/utils\";\n\nexport class PageManager {\n normalPages: RouteRecordRaw[] = [];\n\n extendsPages: RouteRecordRaw[] = [];\n\n msAppClient: MSAppClient | null = null;\n\n msAppClientChangeEvent: Event<{ msAppClient: MSAppClient | null }> =\n new Event();\n\n msAppClientDisposable: Disposable | null = null;\n\n setMSAppCLient(msAppClient: MSAppClient | null) {\n this.msAppClientDisposable?.dispose();\n\n this.msAppClientDisposable = new Disposable();\n\n this.msAppClient = msAppClient;\n\n this.msAppClientChangeEvent.emit({ msAppClient });\n }\n\n addNormalPage(normalPage: RouteRecordRaw) {\n const index = this.normalPages.findIndex(\n (item) => item.name === normalPage.name\n );\n\n if (index > -1) {\n this.normalPages.splice(index, 1);\n }\n\n this.normalPages.push(normalPage);\n }\n\n addExtendsPage(extendsPage: RouteRecordRaw) {\n const index = this.extendsPages.findIndex(\n (item) => item.name === extendsPage.name\n );\n\n if (index > -1) {\n this.extendsPages.splice(index, 1);\n }\n\n this.extendsPages.push(extendsPage);\n }\n\n init() {\n this.addNormalPage({\n name: \"mk-ms-layout\",\n path: \"/\",\n component: () => import(\"../page/index.vue\"),\n });\n\n this.addNormalPage({\n name: \"login\",\n path: \"/login\",\n meta: {\n isAuthorization: false,\n },\n component: () => import(\"../page/login/index.vue\"),\n });\n\n this.addNormalPage({\n name: \"signup\",\n path: \"/signup\",\n meta: {\n isAuthorization: false,\n },\n component: () => import(\"../page/signup/index.vue\"),\n });\n\n this.msAppClientChangeEvent.on(({ msAppClient }) => {\n if (!msAppClient) {\n return;\n }\n\n const vueRouter = msAppClient.vueRouter;\n const vueRoutes = vueRouter.getRoutes();\n\n const addedNormalPageNames: string[] = [];\n\n for (const normalPage of this.normalPages) {\n const vueRoute = vueRoutes.find(\n (vueRoute) => vueRoute.name === normalPage.name\n );\n\n if (!vueRoute) {\n addedNormalPageNames.push(normalPage.name as string);\n vueRouter.addRoute(normalPage);\n }\n }\n\n this.msAppClientDisposable?.register(\n createDisposable(() => {\n for (const addedNormalPageName of addedNormalPageNames) {\n vueRouter.removeRoute(addedNormalPageName);\n }\n })\n );\n\n this.msAppClientDisposable?.register(\n msAppClient.beforeInitUserSessionEvent.on(({ userSession }) => {\n if (!userSession) {\n return;\n }\n\n userSession.beforeInitRouterEvent.on(() => {\n const router = userSession.router;\n\n const addedExtendsPageNames: string[] = [];\n\n for (const extendsPage of this.extendsPages) {\n const routeInfo = router.getRouteByName(\n extendsPage.name as string\n );\n\n if (!routeInfo) {\n continue;\n }\n\n const vueRoute = vueRoutes.find(\n (vueRoute) => vueRoute.name === extendsPage.name\n );\n\n if (!vueRoute) {\n extendsPage.path = routeInfo.route || extendsPage.path;\n addedExtendsPageNames.push(extendsPage.name as string);\n vueRouter.addRoute(\"mk-ms-layout\", extendsPage);\n }\n }\n\n if (!this.extendsPages.find((page) => page.name === \"notFound\")) {\n this.addExtendsPage({\n name: \"notFound\",\n // path: \":pathMatch(.*)*\",\n path: \"\",\n component: () => import(\"../page/index/404.vue\"),\n });\n }\n\n userSession.register(\n createDisposable(() => {\n for (const addedExtendsPageName of addedExtendsPageNames) {\n vueRouter.removeRoute(addedExtendsPageName);\n }\n })\n );\n });\n })\n );\n });\n }\n}\n"],"names":["vueRoute"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PageManager.js","sources":["../../../src/core/PageManager.ts"],"sourcesContent":["import { RouteRecordRaw } from \"vue-router\";\nimport type { MSAppClient } from \"./MSAppClient\";\nimport { Disposable, Event, createDisposable } from \"@maketribe/utils\";\n\nexport class PageManager {\n normalPages: RouteRecordRaw[] = [];\n\n extendsPages: RouteRecordRaw[] = [];\n\n msAppClient: MSAppClient | null = null;\n\n msAppClientChangeEvent: Event<{ msAppClient: MSAppClient | null }> =\n new Event();\n\n afterInitdEvent: Event = new Event();\n\n msAppClientDisposable: Disposable | null = null;\n\n setMSAppCLient(msAppClient: MSAppClient | null) {\n this.msAppClientDisposable?.dispose();\n\n this.msAppClientDisposable = new Disposable();\n\n this.msAppClient = msAppClient;\n\n this.msAppClientChangeEvent.emit({ msAppClient });\n }\n\n addNormalPage(normalPage: RouteRecordRaw) {\n const index = this.normalPages.findIndex(\n (item) => item.name === normalPage.name\n );\n\n if (index > -1) {\n this.normalPages.splice(index, 1);\n }\n\n this.normalPages.push(normalPage);\n }\n\n addExtendsPage(extendsPage: RouteRecordRaw) {\n const index = this.extendsPages.findIndex(\n (item) => item.name === extendsPage.name\n );\n\n if (index > -1) {\n this.extendsPages.splice(index, 1);\n }\n\n this.extendsPages.push(extendsPage);\n }\n\n init() {\n this.addNormalPage({\n name: \"mk-ms-layout\",\n path: \"/\",\n component: () => import(\"../page/index.vue\"),\n });\n\n this.addNormalPage({\n name: \"login\",\n path: \"/login\",\n meta: {\n isAuthorization: false,\n },\n component: () => import(\"../page/login/index.vue\"),\n });\n\n this.addNormalPage({\n name: \"signup\",\n path: \"/signup\",\n meta: {\n isAuthorization: false,\n },\n component: () => import(\"../page/signup/index.vue\"),\n });\n\n this.afterInitdEvent.emit();\n\n this.msAppClientChangeEvent.on(({ msAppClient }) => {\n if (!msAppClient) {\n return;\n }\n\n const vueRouter = msAppClient.vueRouter;\n const vueRoutes = vueRouter.getRoutes();\n\n const addedNormalPageNames: string[] = [];\n\n for (const normalPage of this.normalPages) {\n const vueRoute = vueRoutes.find(\n (vueRoute) => vueRoute.name === normalPage.name\n );\n\n if (!vueRoute) {\n addedNormalPageNames.push(normalPage.name as string);\n vueRouter.addRoute(normalPage);\n }\n }\n\n this.msAppClientDisposable?.register(\n createDisposable(() => {\n for (const addedNormalPageName of addedNormalPageNames) {\n vueRouter.removeRoute(addedNormalPageName);\n }\n })\n );\n\n this.msAppClientDisposable?.register(\n msAppClient.beforeInitUserSessionEvent.on(({ userSession }) => {\n if (!userSession) {\n return;\n }\n\n userSession.beforeInitRouterEvent.on(() => {\n const router = userSession.router;\n\n const addedExtendsPageNames: string[] = [];\n\n for (const extendsPage of this.extendsPages) {\n const routeInfo = router.getRouteByName(\n extendsPage.name as string\n );\n\n if (!routeInfo) {\n continue;\n }\n\n const vueRoute = vueRoutes.find(\n (vueRoute) => vueRoute.name === extendsPage.name\n );\n\n if (!vueRoute) {\n extendsPage.path = routeInfo.route || extendsPage.path;\n addedExtendsPageNames.push(extendsPage.name as string);\n vueRouter.addRoute(\"mk-ms-layout\", extendsPage);\n }\n }\n\n if (!this.extendsPages.find((page) => page.name === \"notFound\")) {\n this.addExtendsPage({\n name: \"notFound\",\n // path: \":pathMatch(.*)*\",\n path: \"\",\n component: () => import(\"../page/index/404.vue\"),\n });\n }\n\n userSession.register(\n createDisposable(() => {\n for (const addedExtendsPageName of addedExtendsPageNames) {\n vueRouter.removeRoute(addedExtendsPageName);\n }\n })\n );\n });\n })\n );\n });\n }\n}\n"],"names":["vueRoute"],"mappings":"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"}
|
|
@@ -53,13 +53,15 @@ const initApplication = async (options) => {
|
|
|
53
53
|
};
|
|
54
54
|
})
|
|
55
55
|
);
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
56
|
+
msAppClient.pageManager.afterInitdEvent.on(() => {
|
|
57
|
+
for (const route of routes) {
|
|
58
|
+
if (route.key.startsWith("index")) {
|
|
59
|
+
msAppClient.pageManager.addExtendsPage(route);
|
|
60
|
+
} else {
|
|
61
|
+
msAppClient.pageManager.addNormalPage(route);
|
|
62
|
+
}
|
|
61
63
|
}
|
|
62
|
-
}
|
|
64
|
+
});
|
|
63
65
|
await msAppClient.init();
|
|
64
66
|
app.use(msAppClient.vueRouter);
|
|
65
67
|
return msAppClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-application.js","sources":["../../src/init-application.ts"],"sourcesContent":["import { App, reactive } from \"vue\";\nimport {\n createRouter,\n createWebHashHistory,\n Router as VueRouter,\n} from \"vue-router\";\nimport { DataTableHeaderComponents, MSAppClient } from \"./core\";\nimport { HttpRequest, WebHttpRequest } from \"@maketribe/request\";\nimport { MSAPPCLIENT_CONTEXT_KEY } from \"./tokens\";\nimport msModule from \"./modules/ms\";\nimport cmsModule from \"./modules/cms\";\nimport { installer } from
|
|
1
|
+
{"version":3,"file":"init-application.js","sources":["../../src/init-application.ts"],"sourcesContent":["import { App, reactive } from \"vue\";\nimport {\n createRouter,\n createWebHashHistory,\n Router as VueRouter,\n} from \"vue-router\";\nimport { DataTableHeaderComponents, MSAppClient } from \"./core\";\nimport { HttpRequest, WebHttpRequest } from \"@maketribe/request\";\nimport { MSAPPCLIENT_CONTEXT_KEY } from \"./tokens\";\nimport msModule from \"./modules/ms\";\nimport cmsModule from \"./modules/cms\";\nimport { installer } from \"./installer\";\n\nimport { generateRoutesFromFiles } from \"./utils\";\nimport {\n DataFilterComponents,\n DataFormComponents,\n DataTableComponents,\n} from \"./core\";\n\nexport type InitMsApplicationOptions = {\n routes: any;\n vueRouter?: VueRouter;\n app: App;\n appID: string;\n logo?: string;\n projectName?: string;\n locale?: string;\n httpRequest?: HttpRequest;\n};\n\nexport const initApplication = async (options: InitMsApplicationOptions) => {\n const app = options.app;\n\n app.use(installer);\n\n const vueRouter =\n options.vueRouter ??\n createRouter({\n history: createWebHashHistory(),\n routes: [],\n });\n\n const msAppClient = reactive(\n new MSAppClient({\n app,\n appID: options!.appID,\n logo: options!.logo ?? \"\",\n projectName: options!.projectName ?? \"\",\n httpRequest: options.httpRequest ?? new WebHttpRequest(),\n origin: location.origin,\n locale: options!.locale,\n vueRouter,\n dataTableComponents: new DataTableComponents(),\n dataTableHeaderComponents: new DataTableHeaderComponents(),\n dataFormComponents: new DataFormComponents(),\n dataFilterComponents: new DataFilterComponents(),\n whereFilterComponents: new DataFilterComponents(),\n })\n ) as unknown as MSAppClient;\n\n msAppClient.addModule(msModule);\n msAppClient.addModule(cmsModule);\n\n app.provide(MSAPPCLIENT_CONTEXT_KEY, { msAppClient });\n\n MSAppClient.instance = msAppClient;\n\n (window as any).msAppClient = msAppClient;\n\n const routes = generateRoutesFromFiles(\n Object.keys(options.routes).map((key) => {\n return {\n path: key.replace(/^\\.\\/pages\\/(.+)\\.vue$/, (_, g) => g),\n module: options.routes[key]?.default || options.routes[key],\n };\n })\n );\n\n msAppClient.pageManager.afterInitdEvent.on(() => {\n for (const route of routes) {\n if (route.key.startsWith(\"index\")) {\n msAppClient.pageManager.addExtendsPage(route);\n } else {\n msAppClient.pageManager.addNormalPage(route);\n }\n }\n });\n\n await msAppClient.init();\n\n app.use(msAppClient.vueRouter);\n\n return msAppClient;\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AA+Ba,MAAA,kBAAkB,OAAO,YAAsC;AAC1E,QAAM,MAAM,QAAQ;AAEpB,MAAI,IAAI,SAAS;AAEX,QAAA,YACJ,QAAQ,aACR,aAAa;AAAA,IACX,SAAS,qBAAqB;AAAA,IAC9B,QAAQ,CAAC;AAAA,EAAA,CACV;AAEH,QAAM,cAAc;AAAA,IAClB,IAAI,YAAY;AAAA,MACd;AAAA,MACA,OAAO,QAAS;AAAA,MAChB,MAAM,QAAS,QAAQ;AAAA,MACvB,aAAa,QAAS,eAAe;AAAA,MACrC,aAAa,QAAQ,eAAe,IAAI,eAAe;AAAA,MACvD,QAAQ,SAAS;AAAA,MACjB,QAAQ,QAAS;AAAA,MACjB;AAAA,MACA,qBAAqB,IAAI,oBAAoB;AAAA,MAC7C,2BAA2B,IAAI,0BAA0B;AAAA,MACzD,oBAAoB,IAAI,mBAAmB;AAAA,MAC3C,sBAAsB,IAAI,qBAAqB;AAAA,MAC/C,uBAAuB,IAAI,qBAAqB;AAAA,IAAA,CACjD;AAAA,EAAA;AAGH,cAAY,UAAU,QAAQ;AAC9B,cAAY,UAAU,SAAS;AAE/B,MAAI,QAAQ,yBAAyB,EAAE,YAAa,CAAA;AAEpD,cAAY,WAAW;AAEtB,SAAe,cAAc;AAE9B,QAAM,SAAS;AAAA,IACb,OAAO,KAAK,QAAQ,MAAM,EAAE,IAAI,CAAC,QAAQ;;AAChC,aAAA;AAAA,QACL,MAAM,IAAI,QAAQ,0BAA0B,CAAC,GAAG,MAAM,CAAC;AAAA,QACvD,UAAQ,aAAQ,OAAO,GAAG,MAAlB,mBAAqB,YAAW,QAAQ,OAAO,GAAG;AAAA,MAAA;AAAA,IAC5D,CACD;AAAA,EAAA;AAGS,cAAA,YAAY,gBAAgB,GAAG,MAAM;AAC/C,eAAW,SAAS,QAAQ;AAC1B,UAAI,MAAM,IAAI,WAAW,OAAO,GAAG;AACrB,oBAAA,YAAY,eAAe,KAAK;AAAA,MAAA,OACvC;AACO,oBAAA,YAAY,cAAc,KAAK;AAAA,MAC7C;AAAA,IACF;AAAA,EAAA,CACD;AAED,QAAM,YAAY;AAEd,MAAA,IAAI,YAAY,SAAS;AAEtB,SAAA;AACT;"}
|
|
@@ -8,6 +8,7 @@ export declare class PageManager {
|
|
|
8
8
|
msAppClientChangeEvent: Event<{
|
|
9
9
|
msAppClient: MSAppClient | null;
|
|
10
10
|
}>;
|
|
11
|
+
afterInitdEvent: Event;
|
|
11
12
|
msAppClientDisposable: Disposable | null;
|
|
12
13
|
setMSAppCLient(msAppClient: MSAppClient | null): void;
|
|
13
14
|
addNormalPage(normalPage: RouteRecordRaw): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maketribe/ms-app",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.15",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/cjs",
|
|
6
6
|
"module": "dist/esm",
|
|
@@ -53,8 +53,8 @@
|
|
|
53
53
|
"yjs": "^13.6.14",
|
|
54
54
|
"@maketribe/dm": "^3.2.5",
|
|
55
55
|
"@maketribe/locale": "^3.2.0",
|
|
56
|
-
"@maketribe/
|
|
57
|
-
"@maketribe/
|
|
56
|
+
"@maketribe/utils": "^3.2.1",
|
|
57
|
+
"@maketribe/request": "^3.2.2"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"@types/sortablejs": "^1.15.8"
|