@zeedhi/teknisa-cli 1.107.2 → 1.108.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/LICENSE +21 -21
- package/README.md +5 -5
- package/bin/teknisa.js +117 -117
- package/package.json +2 -2
- package/src/create.js +118 -118
- package/src/generate.js +20 -20
- package/src/util/component/createEmptyComponent.js +145 -145
- package/src/util/component/createJest.js +19 -19
- package/src/util/component/createNpmignore.js +14 -14
- package/src/util/component/createPackage.js +52 -52
- package/src/util/component/createReadme.js +15 -15
- package/src/util/component/createRollup.js +15 -15
- package/src/util/component/createTsConfig.js +24 -24
- package/src/util/component/createTsLint.js +18 -18
- package/src/util/component/run.js +54 -54
- package/src/util/enhanceErrorMessages.js +13 -13
- package/src/util/project/editCliVersion.js +17 -17
- package/src/util/project/editPackageJson.js +19 -19
- package/src/util/project/module/.env.development +1 -1
- package/src/util/project/module/.env.production +1 -1
- package/src/util/project/module/.eslintrc.js +40 -40
- package/src/util/project/module/GruntFile.js +15 -15
- package/src/util/project/module/README.md +22 -22
- package/src/util/project/module/cliVersion.json +2 -2
- package/src/util/project/module/gitignore.template +21 -21
- package/src/util/project/module/package.json +68 -68
- package/src/util/project/module/postcss.config.js +5 -5
- package/src/util/project/module/public/index.html +17 -17
- package/src/util/project/module/public/metadata/notfound.json +14 -14
- package/src/util/project/module/public/metadata/unauthorized.json +14 -14
- package/src/util/project/module/public/robots.txt +2 -2
- package/src/util/project/module/src/App.vue +134 -134
- package/src/util/project/module/src/config/config.ts +17 -17
- package/src/util/project/module/src/config/devEnvironment.json +4 -4
- package/src/util/project/module/src/config/prodEnvironment.json +3 -3
- package/src/util/project/module/src/controllers/AppController.ts +5 -5
- package/src/util/project/module/src/controllers/index.ts +5 -5
- package/src/util/project/module/src/main.ts +17 -17
- package/src/util/project/module/src/plugins/index.ts +6 -6
- package/src/util/project/module/src/plugins/vuetify.ts +11 -11
- package/src/util/project/module/src/plugins/zeedhi.ts +50 -50
- package/src/util/project/module/src/registerServiceWorker.ts +32 -32
- package/src/util/project/module/src/shims-tsx.d.ts +13 -13
- package/src/util/project/module/src/shims-vue.d.ts +5 -5
- package/src/util/project/module/src/theme/index.ts +12 -12
- package/src/util/project/module/tsconfig.json +45 -45
- package/src/util/project/module/vue.config.js +107 -107
- package/src/util/project/product/.env.development +3 -3
- package/src/util/project/product/.env.production +2 -2
- package/src/util/project/product/.eslintrc.js +41 -41
- package/src/util/project/product/GruntFile.js +15 -15
- package/src/util/project/product/README.md +22 -22
- package/src/util/project/product/cliVersion.json +2 -2
- package/src/util/project/product/gitignore.template +21 -21
- package/src/util/project/product/package.json +69 -69
- package/src/util/project/product/postcss.config.js +5 -5
- package/src/util/project/product/public/assets/img/icons/safari-pinned-tab.svg +33 -33
- package/src/util/project/product/public/assets/img/image-not-found.svg +3 -3
- package/src/util/project/product/public/index.html +19 -19
- package/src/util/project/product/public/metadata/home.json +63 -63
- package/src/util/project/product/public/metadata/login.json +6 -6
- package/src/util/project/product/public/metadata/menu.json +28 -28
- package/src/util/project/product/public/metadata/notfound.json +14 -14
- package/src/util/project/product/public/robots.txt +2 -2
- package/src/util/project/product/src/App.vue +192 -192
- package/src/util/project/product/src/components/img-link/ImgLink.ts +17 -17
- package/src/util/project/product/src/components/img-link/ImgLink.vue +7 -7
- package/src/util/project/product/src/components/img-link/common/ImgLink.ts +32 -32
- package/src/util/project/product/src/components/index.ts +4 -4
- package/src/util/project/product/src/config/config.ts +22 -22
- package/src/util/project/product/src/config/devEnvironment.json +22 -22
- package/src/util/project/product/src/config/prodEnvironment.json +22 -22
- package/src/util/project/product/src/controllers/AppController.ts +119 -119
- package/src/util/project/product/src/controllers/LoginController.ts +17 -17
- package/src/util/project/product/src/controllers/index.ts +7 -7
- package/src/util/project/product/src/main.ts +22 -22
- package/src/util/project/product/src/plugins/index.ts +11 -11
- package/src/util/project/product/src/plugins/vuetify.ts +11 -11
- package/src/util/project/product/src/plugins/zeedhi.ts +72 -72
- package/src/util/project/product/src/registerServiceWorker.ts +32 -32
- package/src/util/project/product/src/router/index.ts +76 -76
- package/src/util/project/product/src/router/routes.ts +37 -37
- package/src/util/project/product/src/shims-tsx.d.ts +13 -13
- package/src/util/project/product/src/shims-vue.d.ts +5 -5
- package/src/util/project/product/src/store.ts +26 -26
- package/src/util/project/product/src/theme/index.ts +10 -10
- package/src/util/project/product/src/views/Microservice.ts +57 -57
- package/src/util/project/product/src/views/Microservice.vue +13 -13
- package/src/util/project/product/tsconfig.json +46 -46
- package/src/util/project/product/vue.config.js +107 -107
- package/src/util/project/renameGitIgnore.js +14 -14
- package/src/util/project/run.js +15 -15
- package/src/util/validateName.js +21 -21
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
import Vue from 'vue';
|
|
2
|
-
import Router from 'vue-router';
|
|
3
|
-
import { Config, Http } from '@zeedhi/core';
|
|
4
|
-
import { TekLibLocalStorage, TekLibAuth } from '@zeedhi/tek-lib';
|
|
5
|
-
import routes from './routes';
|
|
6
|
-
import Store from '../store';
|
|
7
|
-
|
|
8
|
-
Vue.use(Router);
|
|
9
|
-
|
|
10
|
-
const router = new Router({
|
|
11
|
-
mode: 'history',
|
|
12
|
-
base: Config.env.BASE_URL,
|
|
13
|
-
routes,
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
const isOpeningNewModule = function isOpeningNewModule(to: any, from: any) {
|
|
17
|
-
const isFromProduct = (to.name === 'microservice' && from.name !== 'microservice');
|
|
18
|
-
// eslint-disable-next-line max-len
|
|
19
|
-
const isFromAnotherModule = ((to.name === 'microservice' && from.name === 'microservice') && to.path.split('/')[2] !== from.path.split('/')[2]);
|
|
20
|
-
const isNotLoginRoute = (to.fullPath !== Config.env.modules.login.routePath);
|
|
21
|
-
return ((isFromProduct || isFromAnotherModule) && isNotLoginRoute);
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
// eslint-disable-next-line max-len
|
|
25
|
-
const callLibStartSessionFromModule = async function callLibStartSessionFromModule(to: any) {
|
|
26
|
-
const data = {
|
|
27
|
-
USER: localStorage.getItem('LOGIN_USER'),
|
|
28
|
-
LOGIN_LANGUAGE: localStorage.getItem('LOGIN_LAGUAGE'),
|
|
29
|
-
LOGIN_TOKEN: localStorage.getItem('LOGIN_TOKEN'),
|
|
30
|
-
};
|
|
31
|
-
await Http.post(`${Config.env.modules[to.path.split('/')[2]].endPoint}/lib_startSession`, data);
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
router.beforeEach(async (to, from, next) => {
|
|
35
|
-
if (isOpeningNewModule(to, from) && TekLibLocalStorage.getItem('IS_NEXT')) {
|
|
36
|
-
await callLibStartSessionFromModule(to);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
TekLibLocalStorage.setItem('IS_NEXT', true);
|
|
40
|
-
|
|
41
|
-
TekLibAuth.setInitialData(to.path, Config.env.loginRoutePath);
|
|
42
|
-
if (to.path !== Config.env.loginRoutePath && !localStorage.getItem('LOGIN_TOKEN')) {
|
|
43
|
-
next(Config.env.loginRoutePath);
|
|
44
|
-
} else if (to.path === Config.env.loginRoutePath && localStorage.getItem('LOGIN_TOKEN')) {
|
|
45
|
-
next(Config.env.baseUrl);
|
|
46
|
-
} else {
|
|
47
|
-
next();
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
router.afterEach((to, from) => {
|
|
52
|
-
const htmlElement = document.getElementsByTagName('html')[0];
|
|
53
|
-
if (to.name === 'microservice') {
|
|
54
|
-
htmlElement.setAttribute('microservice', '');
|
|
55
|
-
Store.commit('setRouterParams', to.params);
|
|
56
|
-
const frame = (document.getElementById('microservice-frame') as HTMLIFrameElement);
|
|
57
|
-
if (frame && frame.contentWindow && to.path.split('/')[2] === from.path.split('/')[2]) {
|
|
58
|
-
frame.contentWindow.postMessage({
|
|
59
|
-
type: 'microservice-route-change',
|
|
60
|
-
routerParams: to.params,
|
|
61
|
-
}, `${Config.env.modules[to.path.split('/')[2]].baseUrl}`);
|
|
62
|
-
}
|
|
63
|
-
window.document.title = `${Config.env.product.name} - ${to.params.page}`;
|
|
64
|
-
} else {
|
|
65
|
-
htmlElement.removeAttribute('microservice');
|
|
66
|
-
window.document.title = Config.env.product.name;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
if (to.name === 'login') {
|
|
70
|
-
htmlElement.setAttribute('login', '');
|
|
71
|
-
} else {
|
|
72
|
-
htmlElement.removeAttribute('login');
|
|
73
|
-
}
|
|
74
|
-
});
|
|
75
|
-
|
|
76
|
-
export default router;
|
|
1
|
+
import Vue from 'vue';
|
|
2
|
+
import Router from 'vue-router';
|
|
3
|
+
import { Config, Http } from '@zeedhi/core';
|
|
4
|
+
import { TekLibLocalStorage, TekLibAuth } from '@zeedhi/tek-lib';
|
|
5
|
+
import routes from './routes';
|
|
6
|
+
import Store from '../store';
|
|
7
|
+
|
|
8
|
+
Vue.use(Router);
|
|
9
|
+
|
|
10
|
+
const router = new Router({
|
|
11
|
+
mode: 'history',
|
|
12
|
+
base: Config.env.BASE_URL,
|
|
13
|
+
routes,
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
const isOpeningNewModule = function isOpeningNewModule(to: any, from: any) {
|
|
17
|
+
const isFromProduct = (to.name === 'microservice' && from.name !== 'microservice');
|
|
18
|
+
// eslint-disable-next-line max-len
|
|
19
|
+
const isFromAnotherModule = ((to.name === 'microservice' && from.name === 'microservice') && to.path.split('/')[2] !== from.path.split('/')[2]);
|
|
20
|
+
const isNotLoginRoute = (to.fullPath !== Config.env.modules.login.routePath);
|
|
21
|
+
return ((isFromProduct || isFromAnotherModule) && isNotLoginRoute);
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
// eslint-disable-next-line max-len
|
|
25
|
+
const callLibStartSessionFromModule = async function callLibStartSessionFromModule(to: any) {
|
|
26
|
+
const data = {
|
|
27
|
+
USER: localStorage.getItem('LOGIN_USER'),
|
|
28
|
+
LOGIN_LANGUAGE: localStorage.getItem('LOGIN_LAGUAGE'),
|
|
29
|
+
LOGIN_TOKEN: localStorage.getItem('LOGIN_TOKEN'),
|
|
30
|
+
};
|
|
31
|
+
await Http.post(`${Config.env.modules[to.path.split('/')[2]].endPoint}/lib_startSession`, data);
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
router.beforeEach(async (to, from, next) => {
|
|
35
|
+
if (isOpeningNewModule(to, from) && TekLibLocalStorage.getItem('IS_NEXT')) {
|
|
36
|
+
await callLibStartSessionFromModule(to);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
TekLibLocalStorage.setItem('IS_NEXT', true);
|
|
40
|
+
|
|
41
|
+
TekLibAuth.setInitialData(to.path, Config.env.loginRoutePath);
|
|
42
|
+
if (to.path !== Config.env.loginRoutePath && !localStorage.getItem('LOGIN_TOKEN')) {
|
|
43
|
+
next(Config.env.loginRoutePath);
|
|
44
|
+
} else if (to.path === Config.env.loginRoutePath && localStorage.getItem('LOGIN_TOKEN')) {
|
|
45
|
+
next(Config.env.baseUrl);
|
|
46
|
+
} else {
|
|
47
|
+
next();
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
router.afterEach((to, from) => {
|
|
52
|
+
const htmlElement = document.getElementsByTagName('html')[0];
|
|
53
|
+
if (to.name === 'microservice') {
|
|
54
|
+
htmlElement.setAttribute('microservice', '');
|
|
55
|
+
Store.commit('setRouterParams', to.params);
|
|
56
|
+
const frame = (document.getElementById('microservice-frame') as HTMLIFrameElement);
|
|
57
|
+
if (frame && frame.contentWindow && to.path.split('/')[2] === from.path.split('/')[2]) {
|
|
58
|
+
frame.contentWindow.postMessage({
|
|
59
|
+
type: 'microservice-route-change',
|
|
60
|
+
routerParams: to.params,
|
|
61
|
+
}, `${Config.env.modules[to.path.split('/')[2]].baseUrl}`);
|
|
62
|
+
}
|
|
63
|
+
window.document.title = `${Config.env.product.name} - ${to.params.page}`;
|
|
64
|
+
} else {
|
|
65
|
+
htmlElement.removeAttribute('microservice');
|
|
66
|
+
window.document.title = Config.env.product.name;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
if (to.name === 'login') {
|
|
70
|
+
htmlElement.setAttribute('login', '');
|
|
71
|
+
} else {
|
|
72
|
+
htmlElement.removeAttribute('login');
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
export default router;
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { ZdPage } from '@zeedhi/vue';
|
|
2
|
-
|
|
3
|
-
const routes = [
|
|
4
|
-
{
|
|
5
|
-
path: '/auth/login',
|
|
6
|
-
name: 'login',
|
|
7
|
-
component: ZdPage,
|
|
8
|
-
props: {
|
|
9
|
-
path: 'login',
|
|
10
|
-
local: true,
|
|
11
|
-
},
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
path: '/',
|
|
15
|
-
name: 'home',
|
|
16
|
-
component: ZdPage,
|
|
17
|
-
props: () => ({
|
|
18
|
-
path: 'home',
|
|
19
|
-
local: true,
|
|
20
|
-
}),
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
path: '/modules/:module/:page',
|
|
24
|
-
name: 'microservice',
|
|
25
|
-
component: () => import('../views/Microservice.vue'),
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
path: '*',
|
|
29
|
-
component: ZdPage,
|
|
30
|
-
props: {
|
|
31
|
-
path: 'notfound',
|
|
32
|
-
local: true,
|
|
33
|
-
},
|
|
34
|
-
},
|
|
35
|
-
];
|
|
36
|
-
|
|
37
|
-
export default routes;
|
|
1
|
+
import { ZdPage } from '@zeedhi/vue';
|
|
2
|
+
|
|
3
|
+
const routes = [
|
|
4
|
+
{
|
|
5
|
+
path: '/auth/login',
|
|
6
|
+
name: 'login',
|
|
7
|
+
component: ZdPage,
|
|
8
|
+
props: {
|
|
9
|
+
path: 'login',
|
|
10
|
+
local: true,
|
|
11
|
+
},
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
path: '/',
|
|
15
|
+
name: 'home',
|
|
16
|
+
component: ZdPage,
|
|
17
|
+
props: () => ({
|
|
18
|
+
path: 'home',
|
|
19
|
+
local: true,
|
|
20
|
+
}),
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
path: '/modules/:module/:page',
|
|
24
|
+
name: 'microservice',
|
|
25
|
+
component: () => import('../views/Microservice.vue'),
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
path: '*',
|
|
29
|
+
component: ZdPage,
|
|
30
|
+
props: {
|
|
31
|
+
path: 'notfound',
|
|
32
|
+
local: true,
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
];
|
|
36
|
+
|
|
37
|
+
export default routes;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import Vue, { VNode } from 'vue';
|
|
2
|
-
|
|
3
|
-
declare global {
|
|
4
|
-
namespace JSX {
|
|
5
|
-
// tslint:disable no-empty-interface
|
|
6
|
-
interface Element extends VNode {}
|
|
7
|
-
// tslint:disable no-empty-interface
|
|
8
|
-
interface ElementClass extends Vue {}
|
|
9
|
-
interface IntrinsicElements {
|
|
10
|
-
[elem: string]: any;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
}
|
|
1
|
+
import Vue, { VNode } from 'vue';
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace JSX {
|
|
5
|
+
// tslint:disable no-empty-interface
|
|
6
|
+
interface Element extends VNode {}
|
|
7
|
+
// tslint:disable no-empty-interface
|
|
8
|
+
interface ElementClass extends Vue {}
|
|
9
|
+
interface IntrinsicElements {
|
|
10
|
+
[elem: string]: any;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
declare module '*.vue' {
|
|
2
|
-
import Vue from 'vue';
|
|
3
|
-
|
|
4
|
-
export default Vue;
|
|
5
|
-
}
|
|
1
|
+
declare module '*.vue' {
|
|
2
|
+
import Vue from 'vue';
|
|
3
|
+
|
|
4
|
+
export default Vue;
|
|
5
|
+
}
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import Vue from 'vue';
|
|
2
|
-
import Vuex from 'vuex';
|
|
3
|
-
|
|
4
|
-
Vue.use(Vuex);
|
|
5
|
-
|
|
6
|
-
export default new Vuex.Store({
|
|
7
|
-
state: {
|
|
8
|
-
routerParams: {},
|
|
9
|
-
menu: JSON.parse(<string>localStorage.getItem('MENU')) || [],
|
|
10
|
-
},
|
|
11
|
-
mutations: {
|
|
12
|
-
setRouterParams: (state, value: any) => {
|
|
13
|
-
state.routerParams = value;
|
|
14
|
-
localStorage.setItem('routeParams', JSON.stringify(value));
|
|
15
|
-
},
|
|
16
|
-
setMenu: (state, value: any) => {
|
|
17
|
-
state.menu = value;
|
|
18
|
-
},
|
|
19
|
-
},
|
|
20
|
-
actions: {
|
|
21
|
-
},
|
|
22
|
-
getters: {
|
|
23
|
-
routerParams: (state) => state.routerParams,
|
|
24
|
-
getMenu: (state) => state.menu,
|
|
25
|
-
},
|
|
26
|
-
});
|
|
1
|
+
import Vue from 'vue';
|
|
2
|
+
import Vuex from 'vuex';
|
|
3
|
+
|
|
4
|
+
Vue.use(Vuex);
|
|
5
|
+
|
|
6
|
+
export default new Vuex.Store({
|
|
7
|
+
state: {
|
|
8
|
+
routerParams: {},
|
|
9
|
+
menu: JSON.parse(<string>localStorage.getItem('MENU')) || [],
|
|
10
|
+
},
|
|
11
|
+
mutations: {
|
|
12
|
+
setRouterParams: (state, value: any) => {
|
|
13
|
+
state.routerParams = value;
|
|
14
|
+
localStorage.setItem('routeParams', JSON.stringify(value));
|
|
15
|
+
},
|
|
16
|
+
setMenu: (state, value: any) => {
|
|
17
|
+
state.menu = value;
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
actions: {
|
|
21
|
+
},
|
|
22
|
+
getters: {
|
|
23
|
+
routerParams: (state) => state.routerParams,
|
|
24
|
+
getMenu: (state) => state.menu,
|
|
25
|
+
},
|
|
26
|
+
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
const theme = {
|
|
2
|
-
colors: {
|
|
3
|
-
light: {
|
|
4
|
-
primary: '#2d68c3',
|
|
5
|
-
anchor: '#2d68c3',
|
|
6
|
-
},
|
|
7
|
-
},
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
export default theme;
|
|
1
|
+
const theme = {
|
|
2
|
+
colors: {
|
|
3
|
+
light: {
|
|
4
|
+
primary: '#2d68c3',
|
|
5
|
+
anchor: '#2d68c3',
|
|
6
|
+
},
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export default theme;
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
import store from '@/store';
|
|
2
|
-
import Vue from 'vue';
|
|
3
|
-
import { Component } from 'vue-property-decorator';
|
|
4
|
-
import { Config } from '@zeedhi/core';
|
|
5
|
-
import { TekLibLocalStorage } from '@zeedhi/tek-lib';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Microservice
|
|
9
|
-
*/
|
|
10
|
-
@Component
|
|
11
|
-
export default class Mircroservice extends Vue {
|
|
12
|
-
private page: string = '';
|
|
13
|
-
|
|
14
|
-
public microservicePath() {
|
|
15
|
-
const { module, page } = store.getters.routerParams;
|
|
16
|
-
this.setProductInfoLocalStorage();
|
|
17
|
-
|
|
18
|
-
if (process.env.NODE_ENV === 'production') {
|
|
19
|
-
return `${window.location.origin}/${module}?v=${new Date().getTime()}`;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
const userAuth = JSON.stringify({
|
|
23
|
-
LOGIN_TOKEN: localStorage.getItem('LOGIN_TOKEN'),
|
|
24
|
-
LOGIN_USER: localStorage.getItem('LOGIN_USER'),
|
|
25
|
-
LOGIN_USER_NAME: localStorage.getItem('LOGIN_USER_NAME'),
|
|
26
|
-
LOGIN_LANGUAGE: localStorage.getItem('LOGIN_LANGUAGE'),
|
|
27
|
-
LOGIN_HASH: localStorage.getItem('LOGIN_HASH'),
|
|
28
|
-
LOGIN_KEEP_CONNECTED: localStorage.getItem('LOGIN_KEEP_CONNECTED'),
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
const productInfo = JSON.stringify({
|
|
32
|
-
PRODUCT_ID: TekLibLocalStorage.getItem('IS_NEXT') ? Config.env.product.id : TekLibLocalStorage.getItem('PRODUCT_ID'),
|
|
33
|
-
PRODUCT_URL: Config.env.product.url,
|
|
34
|
-
PRODUCT_LOGO_URL: Config.env.product.logoUrl,
|
|
35
|
-
PRODUCT_BACKGROUND_IMG_PATH: Config.env.loginBackgroundImgUrl,
|
|
36
|
-
MODULES_THEME_COLOR: Config.env.product.modulesThemeColor.replace('#', ''),
|
|
37
|
-
MODULES_ROUTE_PATH: this.$route.path,
|
|
38
|
-
IS_NEXT: TekLibLocalStorage.getItem('IS_NEXT') !== false,
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
if (!this.page) {
|
|
42
|
-
this.page = page;
|
|
43
|
-
}
|
|
44
|
-
return `${Config.env.modules[module].baseUrl}?page=${page}&user_auth=${userAuth}&product_info=${productInfo}&v=${new Date().getTime()}`;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
private setProductInfoLocalStorage() {
|
|
48
|
-
if (TekLibLocalStorage.getItem('IS_NEXT')) {
|
|
49
|
-
localStorage.setItem('PRODUCT_ID', Config.env.product.id);
|
|
50
|
-
}
|
|
51
|
-
localStorage.setItem('PRODUCT_URL', Config.env.product.url);
|
|
52
|
-
localStorage.setItem('PRODUCT_LOGO_URL', Config.env.product.logoUrl);
|
|
53
|
-
localStorage.setItem('PRODUCT_BACKGROUND_IMG_PATH', Config.env.loginBackgroundImgUrl);
|
|
54
|
-
localStorage.setItem('MODULES_THEME_COLOR', Config.env.product.modulesThemeColor);
|
|
55
|
-
localStorage.setItem('MODULES_ROUTE_PATH', this.$route.path);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
1
|
+
import store from '@/store';
|
|
2
|
+
import Vue from 'vue';
|
|
3
|
+
import { Component } from 'vue-property-decorator';
|
|
4
|
+
import { Config } from '@zeedhi/core';
|
|
5
|
+
import { TekLibLocalStorage } from '@zeedhi/tek-lib';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Microservice
|
|
9
|
+
*/
|
|
10
|
+
@Component
|
|
11
|
+
export default class Mircroservice extends Vue {
|
|
12
|
+
private page: string = '';
|
|
13
|
+
|
|
14
|
+
public microservicePath() {
|
|
15
|
+
const { module, page } = store.getters.routerParams;
|
|
16
|
+
this.setProductInfoLocalStorage();
|
|
17
|
+
|
|
18
|
+
if (process.env.NODE_ENV === 'production') {
|
|
19
|
+
return `${window.location.origin}/${module}?v=${new Date().getTime()}`;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const userAuth = JSON.stringify({
|
|
23
|
+
LOGIN_TOKEN: localStorage.getItem('LOGIN_TOKEN'),
|
|
24
|
+
LOGIN_USER: localStorage.getItem('LOGIN_USER'),
|
|
25
|
+
LOGIN_USER_NAME: localStorage.getItem('LOGIN_USER_NAME'),
|
|
26
|
+
LOGIN_LANGUAGE: localStorage.getItem('LOGIN_LANGUAGE'),
|
|
27
|
+
LOGIN_HASH: localStorage.getItem('LOGIN_HASH'),
|
|
28
|
+
LOGIN_KEEP_CONNECTED: localStorage.getItem('LOGIN_KEEP_CONNECTED'),
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
const productInfo = JSON.stringify({
|
|
32
|
+
PRODUCT_ID: TekLibLocalStorage.getItem('IS_NEXT') ? Config.env.product.id : TekLibLocalStorage.getItem('PRODUCT_ID'),
|
|
33
|
+
PRODUCT_URL: Config.env.product.url,
|
|
34
|
+
PRODUCT_LOGO_URL: Config.env.product.logoUrl,
|
|
35
|
+
PRODUCT_BACKGROUND_IMG_PATH: Config.env.loginBackgroundImgUrl,
|
|
36
|
+
MODULES_THEME_COLOR: Config.env.product.modulesThemeColor.replace('#', ''),
|
|
37
|
+
MODULES_ROUTE_PATH: this.$route.path,
|
|
38
|
+
IS_NEXT: TekLibLocalStorage.getItem('IS_NEXT') !== false,
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
if (!this.page) {
|
|
42
|
+
this.page = page;
|
|
43
|
+
}
|
|
44
|
+
return `${Config.env.modules[module].baseUrl}?page=${page}&user_auth=${userAuth}&product_info=${productInfo}&v=${new Date().getTime()}`;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
private setProductInfoLocalStorage() {
|
|
48
|
+
if (TekLibLocalStorage.getItem('IS_NEXT')) {
|
|
49
|
+
localStorage.setItem('PRODUCT_ID', Config.env.product.id);
|
|
50
|
+
}
|
|
51
|
+
localStorage.setItem('PRODUCT_URL', Config.env.product.url);
|
|
52
|
+
localStorage.setItem('PRODUCT_LOGO_URL', Config.env.product.logoUrl);
|
|
53
|
+
localStorage.setItem('PRODUCT_BACKGROUND_IMG_PATH', Config.env.loginBackgroundImgUrl);
|
|
54
|
+
localStorage.setItem('MODULES_THEME_COLOR', Config.env.product.modulesThemeColor);
|
|
55
|
+
localStorage.setItem('MODULES_ROUTE_PATH', this.$route.path);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<iframe ref="frame" id="microservice-frame" :src="microservicePath()"/>
|
|
3
|
-
</template>
|
|
4
|
-
|
|
5
|
-
<script lang="ts" src="./Microservice.ts"></script>
|
|
6
|
-
|
|
7
|
-
<style lang="scss">
|
|
8
|
-
#microservice-frame {
|
|
9
|
-
border: 0;
|
|
10
|
-
width: 100%;
|
|
11
|
-
height: 100%;
|
|
12
|
-
}
|
|
13
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<iframe ref="frame" id="microservice-frame" :src="microservicePath()"/>
|
|
3
|
+
</template>
|
|
4
|
+
|
|
5
|
+
<script lang="ts" src="./Microservice.ts"></script>
|
|
6
|
+
|
|
7
|
+
<style lang="scss">
|
|
8
|
+
#microservice-frame {
|
|
9
|
+
border: 0;
|
|
10
|
+
width: 100%;
|
|
11
|
+
height: 100%;
|
|
12
|
+
}
|
|
13
|
+
</style>
|
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "es6",
|
|
4
|
-
"module": "esnext",
|
|
5
|
-
"strict": true,
|
|
6
|
-
"jsx": "preserve",
|
|
7
|
-
"importHelpers": true,
|
|
8
|
-
"moduleResolution": "node",
|
|
9
|
-
"resolveJsonModule": true,
|
|
10
|
-
"experimentalDecorators": true,
|
|
11
|
-
"esModuleInterop": true,
|
|
12
|
-
"allowSyntheticDefaultImports": true,
|
|
13
|
-
"sourceMap": true,
|
|
14
|
-
"baseUrl": ".",
|
|
15
|
-
"typeRoots": [
|
|
16
|
-
"./node_modules/@types",
|
|
17
|
-
"./node_modules/vuetify/types"
|
|
18
|
-
],
|
|
19
|
-
"types": [
|
|
20
|
-
"webpack-env",
|
|
21
|
-
"jest",
|
|
22
|
-
"vuetify"
|
|
23
|
-
],
|
|
24
|
-
"paths": {
|
|
25
|
-
"@/*": [
|
|
26
|
-
"src/*"
|
|
27
|
-
]
|
|
28
|
-
},
|
|
29
|
-
"lib": [
|
|
30
|
-
"esnext",
|
|
31
|
-
"dom",
|
|
32
|
-
"dom.iterable",
|
|
33
|
-
"scripthost"
|
|
34
|
-
]
|
|
35
|
-
},
|
|
36
|
-
"include": [
|
|
37
|
-
".eslintrc.js",
|
|
38
|
-
"src/**/*.ts",
|
|
39
|
-
"src/**/*.tsx",
|
|
40
|
-
"src/**/*.vue",
|
|
41
|
-
"tests/**/*.ts",
|
|
42
|
-
"tests/**/*.tsx"
|
|
43
|
-
],
|
|
44
|
-
"exclude": [
|
|
45
|
-
"node_modules"
|
|
46
|
-
]
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "es6",
|
|
4
|
+
"module": "esnext",
|
|
5
|
+
"strict": true,
|
|
6
|
+
"jsx": "preserve",
|
|
7
|
+
"importHelpers": true,
|
|
8
|
+
"moduleResolution": "node",
|
|
9
|
+
"resolveJsonModule": true,
|
|
10
|
+
"experimentalDecorators": true,
|
|
11
|
+
"esModuleInterop": true,
|
|
12
|
+
"allowSyntheticDefaultImports": true,
|
|
13
|
+
"sourceMap": true,
|
|
14
|
+
"baseUrl": ".",
|
|
15
|
+
"typeRoots": [
|
|
16
|
+
"./node_modules/@types",
|
|
17
|
+
"./node_modules/vuetify/types"
|
|
18
|
+
],
|
|
19
|
+
"types": [
|
|
20
|
+
"webpack-env",
|
|
21
|
+
"jest",
|
|
22
|
+
"vuetify"
|
|
23
|
+
],
|
|
24
|
+
"paths": {
|
|
25
|
+
"@/*": [
|
|
26
|
+
"src/*"
|
|
27
|
+
]
|
|
28
|
+
},
|
|
29
|
+
"lib": [
|
|
30
|
+
"esnext",
|
|
31
|
+
"dom",
|
|
32
|
+
"dom.iterable",
|
|
33
|
+
"scripthost"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"include": [
|
|
37
|
+
".eslintrc.js",
|
|
38
|
+
"src/**/*.ts",
|
|
39
|
+
"src/**/*.tsx",
|
|
40
|
+
"src/**/*.vue",
|
|
41
|
+
"tests/**/*.ts",
|
|
42
|
+
"tests/**/*.tsx"
|
|
43
|
+
],
|
|
44
|
+
"exclude": [
|
|
45
|
+
"node_modules"
|
|
46
|
+
]
|
|
47
47
|
}
|