@wavemaker-ai/angular-codegen 1.0.0-rc.647469
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/.npmrc +1 -0
- package/angular-app/.npmrc +1 -0
- package/angular-app/angular.json +274 -0
- package/angular-app/build-scripts/build.js +36 -0
- package/angular-app/build-scripts/index-html-transform-ng-serve.ts +20 -0
- package/angular-app/build-scripts/index-html-transform.js +28 -0
- package/angular-app/build-scripts/optimize-css.gulpfile.js +101 -0
- package/angular-app/build-scripts/post-build.js +217 -0
- package/angular-app/build-scripts/update-version.js +25 -0
- package/angular-app/dependency-report.html +124 -0
- package/angular-app/generate-dependency-report.js +240 -0
- package/angular-app/npm-shrinkwrap.json +24224 -0
- package/angular-app/package-lock.json +24224 -0
- package/angular-app/package.json +129 -0
- package/angular-app/proxy.conf.js +14 -0
- package/angular-app/src/.browserslistrc +12 -0
- package/angular-app/src/app/app.component.css +0 -0
- package/angular-app/src/app/app.component.script.js +3 -0
- package/angular-app/src/app/app.component.variables.ts +3 -0
- package/angular-app/src/app/app.routes.ts +5 -0
- package/angular-app/src/app/lazy-load-scripts.resolve.ts +13 -0
- package/angular-app/src/app/prefabs/prefab-config.js +2 -0
- package/angular-app/src/app/wm-project-properties.ts +3 -0
- package/angular-app/src/assets/.gitkeep +0 -0
- package/angular-app/src/assets/print.css +32 -0
- package/angular-app/src/assets/styles/css/bootstrap.css.map +1 -0
- package/angular-app/src/assets/styles/css/font/summernote.eot +0 -0
- package/angular-app/src/assets/styles/css/font/summernote.ttf +0 -0
- package/angular-app/src/assets/styles/css/font/summernote.woff +0 -0
- package/angular-app/src/assets/styles/css/font/summernote.woff2 +0 -0
- package/angular-app/src/assets/styles/css/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_222222_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_2e83ff_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_444444_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_454545_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_555555_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_777620_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_777777_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_888888_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_cc0000_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_cd0a0a_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/images/ui-icons_ffffff_256x240.png +0 -0
- package/angular-app/src/assets/styles/css/wm-responsive.css +1 -0
- package/angular-app/src/assets/styles/css/wm-style.css +1 -0
- package/angular-app/src/assets/styles/fonts/FontAwesome.otf +0 -0
- package/angular-app/src/assets/styles/fonts/fontawesome-webfont.eot +0 -0
- package/angular-app/src/assets/styles/fonts/fontawesome-webfont.svg +2671 -0
- package/angular-app/src/assets/styles/fonts/fontawesome-webfont.ttf +0 -0
- package/angular-app/src/assets/styles/fonts/fontawesome-webfont.woff +0 -0
- package/angular-app/src/assets/styles/fonts/fontawesome-webfont.woff2 +0 -0
- package/angular-app/src/assets/styles/fonts/glyphicons-halflings-regular.eot +0 -0
- package/angular-app/src/assets/styles/fonts/glyphicons-halflings-regular.svg +288 -0
- package/angular-app/src/assets/styles/fonts/glyphicons-halflings-regular.ttf +0 -0
- package/angular-app/src/assets/styles/fonts/glyphicons-halflings-regular.woff +0 -0
- package/angular-app/src/assets/styles/fonts/glyphicons-halflings-regular.woff2 +0 -0
- package/angular-app/src/assets/styles/fonts/wavicon.eot +0 -0
- package/angular-app/src/assets/styles/fonts/wavicon.ttf +0 -0
- package/angular-app/src/assets/styles/fonts/wavicon.woff +0 -0
- package/angular-app/src/assets/styles/fonts/wm-streamline-light-icon.eot +0 -0
- package/angular-app/src/assets/styles/fonts/wm-streamline-light-icon.ttf +0 -0
- package/angular-app/src/assets/styles/fonts/wm-streamline-light-icon.woff +0 -0
- package/angular-app/src/assets/styles/fonts/wm-streamline-regular-icon.eot +0 -0
- package/angular-app/src/assets/styles/fonts/wm-streamline-regular-icon.ttf +0 -0
- package/angular-app/src/assets/styles/fonts/wm-streamline-regular-icon.woff +0 -0
- package/angular-app/src/assets/styles/images/live-sync-icon.png +0 -0
- package/angular-app/src/assets/styles/images/live-sync-touch-icon.png +0 -0
- package/angular-app/src/assets/styles/images/loader.gif +0 -0
- package/angular-app/src/assets/styles/images/spinner-small.gif +0 -0
- package/angular-app/src/assets/styles/images/ui-icons.png +0 -0
- package/angular-app/src/environments/environment.dev.ts +3 -0
- package/angular-app/src/environments/environment.prod.ts +3 -0
- package/angular-app/src/environments/environment.ts +16 -0
- package/angular-app/src/framework/services/app-extension.service.ts +20 -0
- package/angular-app/src/framework/services/app-js-provider.service.ts +15 -0
- package/angular-app/src/framework/services/app-variables-provider.service.ts +15 -0
- package/angular-app/src/framework/services/component-ref-provider.service.ts +44 -0
- package/angular-app/src/framework/services/customwidget-config-provider.service.ts +13 -0
- package/angular-app/src/framework/services/lazy-component-ref-provider.service.ts +56 -0
- package/angular-app/src/framework/services/prefab-config-provider.service.ts +13 -0
- package/angular-app/src/framework/util/lazy-module-routes.ts +4 -0
- package/angular-app/src/framework/util/page-util.ts +7 -0
- package/angular-app/src/index.html +17 -0
- package/angular-app/src/main.ts +70 -0
- package/angular-app/src/polyfills.ts +53 -0
- package/angular-app/src/setup-jest.js +121 -0
- package/angular-app/src/styles.css +1 -0
- package/angular-app/src/tsconfig.app.json +17 -0
- package/angular-app/src/tslint.json +17 -0
- package/angular-app/src/wm-namespace.js +13 -0
- package/angular-app/tsconfig.json +94 -0
- package/angular-app/tsconfig.web-app.json +81 -0
- package/angular-app/wm-custom-webpack.config.js +51 -0
- package/build-angular-app.js +522 -0
- package/build-util.js +89 -0
- package/dependencies/app.component.html +40 -0
- package/dependencies/custom-widgets-bundle.cjs.js +421 -0
- package/dependencies/expression-parser.cjs.js +30154 -0
- package/dependencies/pipe-provider.cjs.js +208853 -0
- package/dependencies/transpilation-web.cjs.js +106547 -0
- package/download-packages.js +197 -0
- package/generate-angular-app.js +41 -0
- package/npm-shrinkwrap.json +8093 -0
- package/package-lock.json +8093 -0
- package/package.json +44 -0
- package/pwa-assets/icons/icon-128x128.png +0 -0
- package/pwa-assets/icons/icon-144x144.png +0 -0
- package/pwa-assets/icons/icon-152x152.png +0 -0
- package/pwa-assets/icons/icon-192x192.png +0 -0
- package/pwa-assets/icons/icon-384x384.png +0 -0
- package/pwa-assets/icons/icon-512x512.png +0 -0
- package/pwa-assets/icons/icon-72x72.png +0 -0
- package/pwa-assets/icons/icon-96x96.png +0 -0
- package/pwa-assets/manifest.json +59 -0
- package/pwa-assets/ngsw-config.json +30 -0
- package/pwa-assets/wmsw-worker.js +24 -0
- package/src/codegen-args-cli.js +1 -0
- package/src/codegen-cli.js +1 -0
- package/src/codegen.js +1 -0
- package/src/copy-utils.js +1 -0
- package/src/eslintrc_config.js +1 -0
- package/src/expr-parser-utils.js +1 -0
- package/src/gen-app-codegen-module.js +1 -0
- package/src/gen-app-js.js +1 -0
- package/src/gen-app-override-css.js +1 -0
- package/src/gen-app-prefabs-module.js +1 -0
- package/src/gen-app-routes.js +1 -0
- package/src/gen-app-skeleton.js +1 -0
- package/src/gen-app-variables.js +1 -0
- package/src/gen-components.js +1 -0
- package/src/gen-customwidget-config.js +1 -0
- package/src/gen-index-html.js +1 -0
- package/src/gen-layouts.js +1 -0
- package/src/gen-lazy-module-routes.js +1 -0
- package/src/gen-prefabs.js +1 -0
- package/src/gen-pwa-files.js +1 -0
- package/src/gen-tsconfig.js +1 -0
- package/src/gen-wm-project-properties.js +1 -0
- package/src/handlebar-helpers.js +1 -0
- package/src/pages-util.js +1 -0
- package/src/project-meta.js +1 -0
- package/src/update-angular-json.js +1 -0
- package/src/wm-namespace.js +1 -0
- package/src/wm-utils.js +1 -0
- package/templates/app-codegen.module.ts.hbs +21 -0
- package/templates/app-prefabs.module.ts.hbs +31 -0
- package/templates/app-routes.ts.hbs +14 -0
- package/templates/app.component.script.js.hbs +8 -0
- package/templates/app.config.ts.hbs +211 -0
- package/templates/app.module.ts.hbs +294 -0
- package/templates/component.config.ts.hbs +1 -0
- package/templates/component.expressions.ts.hbs +3 -0
- package/templates/component.variables.ts.hbs +3 -0
- package/templates/customwidget/customwidget-config.ts.hbs +6 -0
- package/templates/customwidget/customwidget.component.script.js.hbs +3 -0
- package/templates/customwidget/customwidget.component.ts.hbs +42 -0
- package/templates/expr-vs-fn.hbs +3 -0
- package/templates/layout/layout.component.ts.hbs +55 -0
- package/templates/layout/layout.module.ts.hbs +42 -0
- package/templates/lazy-module-routes.ts.hbs +3 -0
- package/templates/page/page.component.script.js.hbs +3 -0
- package/templates/page/page.component.ts.hbs +74 -0
- package/templates/page/page.module.ts.hbs +61 -0
- package/templates/partial/partial.component.script.js.hbs +3 -0
- package/templates/partial/partial.component.ts.hbs +61 -0
- package/templates/partial/partial.module.ts.hbs +43 -0
- package/templates/prefab/prefab-config.ts.hbs +6 -0
- package/templates/prefab/prefab.component.script.js.hbs +3 -0
- package/templates/prefab/prefab.component.ts.hbs +63 -0
- package/templates/prefab/prefab.module.ts.hbs +38 -0
- package/templates/wm-project-properties.ts.hbs +7 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import { ApplicationConfig, importProvidersFrom, APP_INITIALIZER, LOCALE_ID } from "@angular/core";
|
|
2
|
+
import { provideRouter, RouteReuseStrategy, withComponentInputBinding, withHashLocation } from "@angular/router";
|
|
3
|
+
import { provideHttpClient, withXsrfConfiguration, HTTP_INTERCEPTORS, withInterceptorsFromDi } from "@angular/common/http";
|
|
4
|
+
import { provideAnimations } from "@angular/platform-browser/animations";
|
|
5
|
+
import { routes } from "./app.routes";
|
|
6
|
+
import { HttpServiceImpl } from "@wm/http";
|
|
7
|
+
import { SecurityService } from "@wm/security";
|
|
8
|
+
import { VariablesService, MetadataService } from "@wm/variables";
|
|
9
|
+
import { OAuthService } from "@wm/oAuth";
|
|
10
|
+
import { PageDirective{{#if enableSpa}}, SpaPageDirective{{/if}} } from "@wm/components/page";
|
|
11
|
+
import {
|
|
12
|
+
{{#if enableSecurity}}AuthGuard, RoleGuard, {{/if}}
|
|
13
|
+
AppJSProvider,
|
|
14
|
+
AppVariablesProvider,
|
|
15
|
+
ComponentRefProvider,
|
|
16
|
+
PrefabConfigProvider,
|
|
17
|
+
WmNgRouteReuseStrategy,
|
|
18
|
+
CanDeactivateNgPageGuard,
|
|
19
|
+
AppExtensionProvider,
|
|
20
|
+
CustomwidgetConfigProvider,
|
|
21
|
+
AppDefaultsService,
|
|
22
|
+
AppExtensionJSResolve,
|
|
23
|
+
AppJSResolve,
|
|
24
|
+
AppVariablesResolve,
|
|
25
|
+
AppBeforeLoadResolve,
|
|
26
|
+
I18nResolve,
|
|
27
|
+
AppManagerService,
|
|
28
|
+
AppRef,
|
|
29
|
+
I18nServiceImpl,
|
|
30
|
+
NavigationServiceImpl,
|
|
31
|
+
SpinnerServiceImpl,
|
|
32
|
+
ToasterServiceImpl,
|
|
33
|
+
DynamicComponentRefProviderService,
|
|
34
|
+
HttpCallInterceptor,
|
|
35
|
+
PrefabManagerService,
|
|
36
|
+
PipeService
|
|
37
|
+
} from "@wm/runtime/base";
|
|
38
|
+
import { AppJSProviderService } from "../framework/services/app-js-provider.service";
|
|
39
|
+
import { AppVariablesProviderService } from "../framework/services/app-variables-provider.service";
|
|
40
|
+
import { AppExtensionProviderService } from "../framework/services/app-extension.service";
|
|
41
|
+
import { ComponentRefProviderService } from "../framework/services/component-ref-provider.service";
|
|
42
|
+
import { PrefabConfigProviderService } from "../framework/services/prefab-config-provider.service";
|
|
43
|
+
import { CustomwidgetConfigProviderService } from "../framework/services/customwidget-config-provider.service";
|
|
44
|
+
import { LazyLoadScriptsResolve } from "./lazy-load-scripts.resolve";
|
|
45
|
+
import {
|
|
46
|
+
AbstractHttpService,
|
|
47
|
+
AbstractI18nService,
|
|
48
|
+
AbstractNavigationService,
|
|
49
|
+
AbstractSpinnerService,
|
|
50
|
+
AbstractToasterService,
|
|
51
|
+
App,
|
|
52
|
+
AppDefaults,
|
|
53
|
+
CustomWidgetRefProvider,
|
|
54
|
+
DynamicComponentRefProvider,
|
|
55
|
+
PartialRefProvider,
|
|
56
|
+
AbstractDialogService,
|
|
57
|
+
_WM_APP_PROJECT,
|
|
58
|
+
} from "@wm/core";
|
|
59
|
+
import { ModalModule } from "ngx-bootstrap/modal";
|
|
60
|
+
import { ToastNoAnimationModule } from "ngx-toastr";
|
|
61
|
+
import { BsDatepickerModule } from "ngx-bootstrap/datepicker";
|
|
62
|
+
import { NgCircleProgressModule } from "ng-circle-progress";
|
|
63
|
+
import { LocationStrategy, HashLocationStrategy, DatePipe, DecimalPipe } from "@angular/common";
|
|
64
|
+
import { CustomPipe, DialogServiceImpl, FilterPipe, ImagePipe, SanitizePipe, ToDatePipe, TrailingZeroDecimalPipe, TrustAsPipe } from "@wm/components/base";
|
|
65
|
+
import { initPrefabConfig } from "./prefabs/prefab-config";
|
|
66
|
+
{{#if isPwa}}
|
|
67
|
+
import { ServiceWorkerModule } from "@angular/service-worker";
|
|
68
|
+
import { environment } from "../environments/environment";
|
|
69
|
+
{{/if}}
|
|
70
|
+
{{#if isCSP}}
|
|
71
|
+
import { ɵSharedStylesHost } from '@angular/platform-browser';
|
|
72
|
+
import { ɵDomRendererFactory2 } from "@angular/platform-browser";
|
|
73
|
+
import { WMDomSharedStylesHost } from "@wm/runtime/base";
|
|
74
|
+
import { WMDomRendererFactory2 } from "@wm/runtime/base";
|
|
75
|
+
{{/if}}
|
|
76
|
+
|
|
77
|
+
const wmModules = [
|
|
78
|
+
importProvidersFrom(
|
|
79
|
+
ModalModule.forRoot(),
|
|
80
|
+
ToastNoAnimationModule.forRoot({ maxOpened: 1, autoDismiss: true }),
|
|
81
|
+
BsDatepickerModule.forRoot(),
|
|
82
|
+
NgCircleProgressModule.forRoot(),
|
|
83
|
+
{{#if isPwa}}
|
|
84
|
+
ServiceWorkerModule.register("wmsw-worker.js", { enabled: environment.production })
|
|
85
|
+
{{/if}}
|
|
86
|
+
)
|
|
87
|
+
];
|
|
88
|
+
export const xsrfHeaderName = "{{xsrfTokenHeaderName}}";
|
|
89
|
+
export const isPrefabInitialized = initPrefabConfig();
|
|
90
|
+
|
|
91
|
+
const initializeProjectDetails = () => {
|
|
92
|
+
let cdnUrl = document.querySelector('[name="deployUrl"]') && document.querySelector('[name="deployUrl"]').getAttribute('content');
|
|
93
|
+
_WM_APP_PROJECT.isPreview = cdnUrl ? false : true;
|
|
94
|
+
const apiUrl = document.querySelector('[name="apiUrl"]') && document.querySelector('[name="apiUrl"]').getAttribute('content');
|
|
95
|
+
//for preview
|
|
96
|
+
if (!cdnUrl) {
|
|
97
|
+
cdnUrl = document.querySelector('[name="cdnUrl"]') && document.querySelector('[name="cdnUrl"]').getAttribute('content');
|
|
98
|
+
}
|
|
99
|
+
_WM_APP_PROJECT.id = location.href.split('/')[3];
|
|
100
|
+
// Integration with third party apps like in SSPA/WebComponents, this meta tag with cdnUrl will not be there then default it to ng-bundle/
|
|
101
|
+
_WM_APP_PROJECT.apiUrl = apiUrl || './';
|
|
102
|
+
_WM_APP_PROJECT.cdnUrl = cdnUrl || 'ng-bundle/';
|
|
103
|
+
_WM_APP_PROJECT.ngDest = 'ng-bundle/';
|
|
104
|
+
try {
|
|
105
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
106
|
+
//@ts-ignore
|
|
107
|
+
__webpack_require__.p = __webpack_public_path__ = cdnUrl;
|
|
108
|
+
} catch (e) {
|
|
109
|
+
//for app preview there is no webpack. Don't do anything.
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
export function InitializeApp(I18nService, AppJSResolve, AppBeforeLoadResolve, AppVariablesResolve, AppExtensionJSResolve) {
|
|
114
|
+
return async () => {
|
|
115
|
+
initializeProjectDetails();
|
|
116
|
+
await AppJSResolve.resolve();
|
|
117
|
+
await AppVariablesResolve.resolve();
|
|
118
|
+
await AppExtensionJSResolve.resolve();
|
|
119
|
+
await I18nService.loadDefaultLocale();
|
|
120
|
+
return AppBeforeLoadResolve.resolve();
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export function setAngularLocale(I18nService) {
|
|
125
|
+
initializeProjectDetails();
|
|
126
|
+
return I18nService.deduceAppLocale();
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
export const appConfig: ApplicationConfig = {
|
|
130
|
+
providers: [
|
|
131
|
+
{
|
|
132
|
+
provide: HTTP_INTERCEPTORS,
|
|
133
|
+
useClass: HttpCallInterceptor,
|
|
134
|
+
multi: true
|
|
135
|
+
},
|
|
136
|
+
// Provide Angular core services
|
|
137
|
+
provideRouter(routes, withHashLocation(), withComponentInputBinding()),
|
|
138
|
+
provideHttpClient(
|
|
139
|
+
withInterceptorsFromDi(),
|
|
140
|
+
withXsrfConfiguration({
|
|
141
|
+
cookieName: "wm_xsrf_token",
|
|
142
|
+
headerName: xsrfHeaderName
|
|
143
|
+
})
|
|
144
|
+
),
|
|
145
|
+
provideAnimations(),
|
|
146
|
+
// Provide application-specific services
|
|
147
|
+
{
|
|
148
|
+
provide: APP_INITIALIZER,
|
|
149
|
+
useFactory: InitializeApp,
|
|
150
|
+
deps: [AbstractI18nService, AppJSResolve, AppBeforeLoadResolve, AppVariablesResolve, AppExtensionJSResolve, PipeService],
|
|
151
|
+
multi: true
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
provide: LOCALE_ID,
|
|
155
|
+
useFactory: setAngularLocale,
|
|
156
|
+
deps: [AbstractI18nService]
|
|
157
|
+
},
|
|
158
|
+
{ provide: AppJSProvider, useClass: AppJSProviderService },
|
|
159
|
+
{ provide: AbstractDialogService, useClass: DialogServiceImpl },
|
|
160
|
+
{ provide: AppVariablesProvider, useClass: AppVariablesProviderService },
|
|
161
|
+
{ provide: AppExtensionProvider, useClass: AppExtensionProviderService },
|
|
162
|
+
{ provide: ComponentRefProvider, useClass: ComponentRefProviderService },
|
|
163
|
+
{ provide: CustomWidgetRefProvider, useClass: ComponentRefProviderService },
|
|
164
|
+
{ provide: PrefabConfigProvider, useClass: PrefabConfigProviderService },
|
|
165
|
+
{ provide: CustomwidgetConfigProvider, useClass: CustomwidgetConfigProviderService },
|
|
166
|
+
{ provide: RouteReuseStrategy, useClass: WmNgRouteReuseStrategy },
|
|
167
|
+
{ provide: LocationStrategy, useClass: HashLocationStrategy },
|
|
168
|
+
{ provide: PartialRefProvider, useClass: ComponentRefProviderService },
|
|
169
|
+
{ provide: AbstractI18nService, useClass: I18nServiceImpl },
|
|
170
|
+
{ provide: AppDefaults, useClass: AppDefaultsService },
|
|
171
|
+
{ provide: AbstractHttpService, useClass: HttpServiceImpl },
|
|
172
|
+
{ provide: AbstractSpinnerService, useClass: SpinnerServiceImpl },
|
|
173
|
+
{ provide: App, useClass: AppRef },
|
|
174
|
+
{ provide: AbstractNavigationService, useClass: NavigationServiceImpl },
|
|
175
|
+
{ provide: AbstractToasterService, useClass: ToasterServiceImpl },
|
|
176
|
+
{ provide: DynamicComponentRefProvider, useClass: DynamicComponentRefProviderService, },
|
|
177
|
+
{{#if isCSP}}
|
|
178
|
+
{ provide: ɵSharedStylesHost, useClass: WMDomSharedStylesHost },
|
|
179
|
+
{ provide: ɵDomRendererFactory2, useClass: WMDomRendererFactory2 },
|
|
180
|
+
{{/if}}
|
|
181
|
+
PageDirective,
|
|
182
|
+
AppManagerService,
|
|
183
|
+
DatePipe,
|
|
184
|
+
{{#if enableSpa}}SpaPageDirective,{{/if}}
|
|
185
|
+
AppJSResolve,
|
|
186
|
+
AppExtensionJSResolve,
|
|
187
|
+
AppVariablesResolve,
|
|
188
|
+
AppBeforeLoadResolve,
|
|
189
|
+
PipeService,
|
|
190
|
+
I18nResolve,
|
|
191
|
+
SecurityService,
|
|
192
|
+
OAuthService,
|
|
193
|
+
VariablesService,
|
|
194
|
+
MetadataService,
|
|
195
|
+
PrefabManagerService,
|
|
196
|
+
SanitizePipe,
|
|
197
|
+
ToDatePipe,
|
|
198
|
+
FilterPipe,
|
|
199
|
+
TrailingZeroDecimalPipe,
|
|
200
|
+
TrustAsPipe,
|
|
201
|
+
DecimalPipe,
|
|
202
|
+
ImagePipe,
|
|
203
|
+
CustomPipe,
|
|
204
|
+
Location,
|
|
205
|
+
// Other application-wide services
|
|
206
|
+
CanDeactivateNgPageGuard,
|
|
207
|
+
LazyLoadScriptsResolve,
|
|
208
|
+
{{#if enableSecurity}}AuthGuard, RoleGuard, {{/if}}
|
|
209
|
+
...wmModules
|
|
210
|
+
]
|
|
211
|
+
};
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
import { NgModule, ModuleWithProviders } from '@angular/core';
|
|
2
|
+
import { BrowserModule } from '@angular/platform-browser';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { RouterModule, RouteReuseStrategy } from '@angular/router';
|
|
5
|
+
import { HttpClientModule, HttpClientXsrfModule } from '@angular/common/http';
|
|
6
|
+
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
7
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
import { ModalModule } from 'ngx-bootstrap/modal';
|
|
11
|
+
import { NgCircleProgressModule } from 'ng-circle-progress';
|
|
12
|
+
import { ToastNoAnimationModule } from 'ngx-toastr';
|
|
13
|
+
import { BsDatepickerModule } from 'ngx-bootstrap/datepicker';
|
|
14
|
+
|
|
15
|
+
{{#if loadAllComponents}}
|
|
16
|
+
// Basic widgets
|
|
17
|
+
import { BasicModule } from '@wm/components/basic';
|
|
18
|
+
import { ProgressModule } from '@wm/components/basic/progress';
|
|
19
|
+
import { RichTextEditorModule } from '@wm/components/basic/rich-text-editor';
|
|
20
|
+
import { SearchModule } from '@wm/components/basic/search';
|
|
21
|
+
import { TreeModule } from '@wm/components/basic/tree';
|
|
22
|
+
|
|
23
|
+
// input
|
|
24
|
+
import { InputModule } from '@wm/components/input';
|
|
25
|
+
import { CalendarModule } from '@wm/components/input/calendar';
|
|
26
|
+
import { ChipsModule } from '@wm/components/input/chips';
|
|
27
|
+
import { ColorPickerModule } from '@wm/components/input/color-picker';
|
|
28
|
+
import { CurrencyModule } from '@wm/components/input/currency';
|
|
29
|
+
import { EpochModule } from '@wm/components/input/epoch';
|
|
30
|
+
import { FileUploadModule } from '@wm/components/input/file-upload';
|
|
31
|
+
import { RatingModule } from '@wm/components/input/rating';
|
|
32
|
+
import { SliderModule } from '@wm/components/input/slider';
|
|
33
|
+
|
|
34
|
+
// Data
|
|
35
|
+
import { CardModule } from '@wm/components/data/card';
|
|
36
|
+
import { FormModule } from '@wm/components/data/form';
|
|
37
|
+
import { ListModule } from '@wm/components/data/list';
|
|
38
|
+
import { LiveTableModule } from '@wm/components/data/live-table';
|
|
39
|
+
import { PaginationModule } from '@wm/components/data/pagination';
|
|
40
|
+
import { TableModule } from '@wm/components/data/table';
|
|
41
|
+
|
|
42
|
+
//Chart
|
|
43
|
+
import { ChartModule } from '@wm/components/chart';
|
|
44
|
+
|
|
45
|
+
//Containers
|
|
46
|
+
import { AccordionModule } from '@wm/components/containers/accordion';
|
|
47
|
+
import { LinearLayoutModule } from '@wm/components/containers/linear-layout';
|
|
48
|
+
import { LayoutGridModule } from '@wm/components/containers/layout-grid';
|
|
49
|
+
import { PanelModule } from '@wm/components/containers/panel';
|
|
50
|
+
import { TabsModule } from '@wm/components/containers/tabs';
|
|
51
|
+
import { TileModule } from '@wm/components/containers/tile';
|
|
52
|
+
import { WizardModule } from '@wm/components/containers/wizard';
|
|
53
|
+
|
|
54
|
+
//Dialogs
|
|
55
|
+
import { AlertDialogModule } from '@wm/components/dialogs/alert-dialog';
|
|
56
|
+
import { IframeDialogModule } from '@wm/components/dialogs/iframe-dialog';
|
|
57
|
+
import { LoginDialogModule } from '@wm/components/dialogs/login-dialog';
|
|
58
|
+
import { PartialDialogModule } from '@wm/components/dialogs/partial-dialog';
|
|
59
|
+
|
|
60
|
+
// Navigation
|
|
61
|
+
import { BreadcrumbModule } from '@wm/components/navigation/breadcrumb';
|
|
62
|
+
import { MenuModule } from '@wm/components/navigation/menu';
|
|
63
|
+
import { NavbarModule } from '@wm/components/navigation/navbar';
|
|
64
|
+
import { PopoverModule } from '@wm/components/navigation/popover';
|
|
65
|
+
|
|
66
|
+
// Advanced
|
|
67
|
+
import { CarouselModule } from '@wm/components/advanced/carousel';
|
|
68
|
+
import { LoginModule } from '@wm/components/advanced/login';
|
|
69
|
+
import { MarqueeModule } from '@wm/components/advanced/marquee';
|
|
70
|
+
|
|
71
|
+
import { PageModule } from '@wm/components/page';
|
|
72
|
+
import { FooterModule } from '@wm/components/page/footer';
|
|
73
|
+
import { HeaderModule } from '@wm/components/page/header';
|
|
74
|
+
import { LeftPanelModule } from '@wm/components/page/left-panel';
|
|
75
|
+
import { RightPanelModule } from '@wm/components/page/right-panel';
|
|
76
|
+
import { TopNavModule } from '@wm/components/page/top-nav';
|
|
77
|
+
|
|
78
|
+
import { PrefabModule } from '@wm/components/prefab';
|
|
79
|
+
{{#if isMobileApp}}
|
|
80
|
+
import { BasicModule as MobileBasicModule} from '@wm/mobile/components/basic';
|
|
81
|
+
import { SearchModule as MobileSearchModule } from '@wm/mobile/components/basic/search';
|
|
82
|
+
|
|
83
|
+
import { SegmentedControlModule as MobileSegmentedControlModule } from '@wm/mobile/components/containers/segmented-control';
|
|
84
|
+
|
|
85
|
+
import { MediaListModule as MobileMediaListModule } from '@wm/mobile/components/data/media-list';
|
|
86
|
+
|
|
87
|
+
import { BarcodeScannerModule as MobileBarcodeScannerModule } from '@wm/mobile/components/device/barcode-scanner';
|
|
88
|
+
import { CameraModule as MobileCameraModule } from '@wm/mobile/components/device/camera';
|
|
89
|
+
|
|
90
|
+
import { FileUploadModule as MobileFileUploadModule } from '@wm/mobile/components/input/file-upload';
|
|
91
|
+
|
|
92
|
+
import { PageModule as MobilePageModule } from '@wm/mobile/components/page';
|
|
93
|
+
import { LeftPanelModule as MobileLeftPanelModule } from '@wm/mobile/components/page/left-panel';
|
|
94
|
+
import { MobileNavbarModule as MobileMobileNavbarModule } from '@wm/mobile/components/page/mobile-navbar';
|
|
95
|
+
import { TabBarModule as MobileTabBarModule } from '@wm/mobile/components/page/tab-bar';
|
|
96
|
+
{{/if}}
|
|
97
|
+
{{/if}}
|
|
98
|
+
import { CoreModule, PartialRefProvider, CustomWidgetRefProvider } from '@wm/core';
|
|
99
|
+
import {
|
|
100
|
+
AppComponent,
|
|
101
|
+
AppJSProvider,
|
|
102
|
+
AppVariablesProvider,
|
|
103
|
+
ComponentRefProvider,
|
|
104
|
+
PrefabConfigProvider,
|
|
105
|
+
CustomwidgetConfigProvider,
|
|
106
|
+
WmNgRouteReuseStrategy,
|
|
107
|
+
CanDeactivateNgPageGuard,
|
|
108
|
+
REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS,
|
|
109
|
+
AppExtensionProvider,
|
|
110
|
+
RuntimeBaseModule
|
|
111
|
+
} from '@wm/runtime/base';
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
import { routes } from './app.routes';
|
|
115
|
+
import { AppJSProviderService } from '../framework/services/app-js-provider.service';
|
|
116
|
+
import { AppVariablesProviderService } from '../framework/services/app-variables-provider.service';
|
|
117
|
+
import { AppExtensionProviderService } from '../framework/services/app-extension.service';
|
|
118
|
+
import { ComponentRefProviderService } from '../framework/services/component-ref-provider.service';
|
|
119
|
+
import { PrefabConfigProviderService } from '../framework/services/prefab-config-provider.service';
|
|
120
|
+
import { AppCodeGenModule, xsrfHeaderName } from './app-codegen.module';
|
|
121
|
+
import { LazyLoadScriptsResolve } from './lazy-load-scripts.resolve';
|
|
122
|
+
import { initPrefabConfig } from './prefabs/prefab-config';
|
|
123
|
+
import { CustomwidgetConfigProviderService } from '../framework/services/customwidget-config-provider.service';
|
|
124
|
+
|
|
125
|
+
{{#if isPwa}}
|
|
126
|
+
import { ServiceWorkerModule } from '@angular/service-worker';
|
|
127
|
+
import { environment } from '../environments/environment';
|
|
128
|
+
{{/if}}
|
|
129
|
+
|
|
130
|
+
export const modalModule = ModalModule.forRoot();
|
|
131
|
+
export const routerModule = RouterModule.forRoot(routes, {useHash: true, scrollPositionRestoration: 'top'});
|
|
132
|
+
export const toastrModule = ToastNoAnimationModule.forRoot({maxOpened: 1, autoDismiss: true });
|
|
133
|
+
export const bsDatePickerModule: ModuleWithProviders<any> = BsDatepickerModule.forRoot();
|
|
134
|
+
export const httpClientXsrfModule = HttpClientXsrfModule.withOptions({
|
|
135
|
+
cookieName: 'wm_xsrf_token',
|
|
136
|
+
headerName: xsrfHeaderName
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
export const ngCircleProgressModule: ModuleWithProviders<any> = NgCircleProgressModule.forRoot({});
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
{{#if loadAllComponents}}
|
|
143
|
+
const componentsModule = [
|
|
144
|
+
NgCircleProgressModule,
|
|
145
|
+
|
|
146
|
+
// Basic widgets
|
|
147
|
+
BasicModule,
|
|
148
|
+
ProgressModule,
|
|
149
|
+
RichTextEditorModule,
|
|
150
|
+
SearchModule,
|
|
151
|
+
TreeModule,
|
|
152
|
+
|
|
153
|
+
// Input
|
|
154
|
+
CalendarModule,
|
|
155
|
+
ChipsModule,
|
|
156
|
+
ColorPickerModule,
|
|
157
|
+
CurrencyModule,
|
|
158
|
+
EpochModule,
|
|
159
|
+
FileUploadModule,
|
|
160
|
+
InputModule,
|
|
161
|
+
RatingModule,
|
|
162
|
+
SliderModule,
|
|
163
|
+
|
|
164
|
+
// Data
|
|
165
|
+
CardModule,
|
|
166
|
+
FormModule,
|
|
167
|
+
ListModule,
|
|
168
|
+
LiveTableModule,
|
|
169
|
+
PaginationModule,
|
|
170
|
+
TableModule,
|
|
171
|
+
|
|
172
|
+
// chart
|
|
173
|
+
ChartModule,
|
|
174
|
+
|
|
175
|
+
// container modules
|
|
176
|
+
AccordionModule,
|
|
177
|
+
LinearLayoutModule,
|
|
178
|
+
LayoutGridModule,
|
|
179
|
+
PanelModule,
|
|
180
|
+
TabsModule,
|
|
181
|
+
TileModule,
|
|
182
|
+
WizardModule,
|
|
183
|
+
|
|
184
|
+
// dialogs
|
|
185
|
+
AlertDialogModule,
|
|
186
|
+
IframeDialogModule,
|
|
187
|
+
LoginDialogModule,
|
|
188
|
+
PartialDialogModule,
|
|
189
|
+
|
|
190
|
+
// navigation
|
|
191
|
+
BreadcrumbModule,
|
|
192
|
+
MenuModule,
|
|
193
|
+
NavbarModule,
|
|
194
|
+
PopoverModule,
|
|
195
|
+
|
|
196
|
+
//Advanced
|
|
197
|
+
CarouselModule,
|
|
198
|
+
LoginModule,
|
|
199
|
+
MarqueeModule,
|
|
200
|
+
|
|
201
|
+
PageModule,
|
|
202
|
+
FooterModule,
|
|
203
|
+
HeaderModule,
|
|
204
|
+
LeftPanelModule,
|
|
205
|
+
RightPanelModule,
|
|
206
|
+
TopNavModule,
|
|
207
|
+
|
|
208
|
+
PrefabModule
|
|
209
|
+
];
|
|
210
|
+
|
|
211
|
+
{{#if isMobileApp}}
|
|
212
|
+
export const mobileComponentModules = [
|
|
213
|
+
MobileBasicModule,
|
|
214
|
+
MobileSearchModule,
|
|
215
|
+
MobileSegmentedControlModule,
|
|
216
|
+
MobileMediaListModule,
|
|
217
|
+
MobileBarcodeScannerModule,
|
|
218
|
+
MobileCameraModule,
|
|
219
|
+
MobileFileUploadModule,
|
|
220
|
+
MobilePageModule,
|
|
221
|
+
MobileLeftPanelModule,
|
|
222
|
+
MobileMobileNavbarModule,
|
|
223
|
+
MobileTabBarModule
|
|
224
|
+
];
|
|
225
|
+
{{/if}}
|
|
226
|
+
|
|
227
|
+
REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(...componentsModule);
|
|
228
|
+
REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(FormsModule, ReactiveFormsModule);
|
|
229
|
+
{{#if isMobileApp}}
|
|
230
|
+
REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(...mobileComponentModules);
|
|
231
|
+
{{/if}}
|
|
232
|
+
{{/if}}
|
|
233
|
+
|
|
234
|
+
import { HttpServiceModule } from "@wm/http";
|
|
235
|
+
import { SecurityModule } from "@wm/security";
|
|
236
|
+
import { WmComponentsModule } from "@wm/components/base";
|
|
237
|
+
import { VariablesModule } from "@wm/variables";
|
|
238
|
+
import { OAuthModule } from "@wm/oAuth";
|
|
239
|
+
import { PageDirective } from "@wm/components/page";
|
|
240
|
+
|
|
241
|
+
const WM_MODULES_FOR_ROOT = [
|
|
242
|
+
WmComponentsModule.forRoot(),
|
|
243
|
+
CoreModule.forRoot(),
|
|
244
|
+
SecurityModule.forRoot(),
|
|
245
|
+
OAuthModule.forRoot(),
|
|
246
|
+
VariablesModule.forRoot(),
|
|
247
|
+
HttpServiceModule.forRoot(),
|
|
248
|
+
RuntimeBaseModule.forRoot()
|
|
249
|
+
];
|
|
250
|
+
|
|
251
|
+
export const isPrefabInitialized = initPrefabConfig();
|
|
252
|
+
|
|
253
|
+
@NgModule({
|
|
254
|
+
declarations: [],
|
|
255
|
+
imports: [
|
|
256
|
+
BrowserModule,
|
|
257
|
+
BrowserAnimationsModule,
|
|
258
|
+
CommonModule,
|
|
259
|
+
RouterModule,
|
|
260
|
+
HttpClientModule,
|
|
261
|
+
|
|
262
|
+
modalModule,
|
|
263
|
+
|
|
264
|
+
ngCircleProgressModule,
|
|
265
|
+
|
|
266
|
+
routerModule,
|
|
267
|
+
toastrModule,
|
|
268
|
+
httpClientXsrfModule,
|
|
269
|
+
bsDatePickerModule,
|
|
270
|
+
|
|
271
|
+
WM_MODULES_FOR_ROOT,
|
|
272
|
+
AppCodeGenModule,
|
|
273
|
+
|
|
274
|
+
{{#if isPwa}}
|
|
275
|
+
ServiceWorkerModule.register('wmsw-worker.js', { enabled: environment.production })
|
|
276
|
+
{{/if}}
|
|
277
|
+
],
|
|
278
|
+
providers: [
|
|
279
|
+
{provide: AppJSProvider, useClass: AppJSProviderService},
|
|
280
|
+
{provide: AppVariablesProvider, useClass: AppVariablesProviderService},
|
|
281
|
+
{provide: AppExtensionProvider,useClass:AppExtensionProviderService},
|
|
282
|
+
{provide: ComponentRefProvider, useClass: ComponentRefProviderService},
|
|
283
|
+
{provide: PartialRefProvider, useClass: ComponentRefProviderService},
|
|
284
|
+
{provide: CustomWidgetRefProvider, useClass: ComponentRefProviderService},
|
|
285
|
+
{provide: PrefabConfigProvider, useClass: PrefabConfigProviderService},
|
|
286
|
+
{provide: CustomwidgetConfigProvider, useClass: CustomwidgetConfigProviderService},
|
|
287
|
+
{provide: RouteReuseStrategy, useClass: WmNgRouteReuseStrategy},
|
|
288
|
+
CanDeactivateNgPageGuard,
|
|
289
|
+
LazyLoadScriptsResolve,
|
|
290
|
+
PageDirective
|
|
291
|
+
],
|
|
292
|
+
bootstrap: [AppComponent]
|
|
293
|
+
})
|
|
294
|
+
export class AppModule {}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const config = {{config}};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Component, Injector, Optional, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
|
|
3
|
+
import { UserDefinedExecutionContext } from '@wm/core';
|
|
4
|
+
|
|
5
|
+
import { initScript } from './{{name}}.component.script';
|
|
6
|
+
import { getVariables } from './{{name}}.component.variables';
|
|
7
|
+
import { AppRef, BaseCustomWidgetComponent } from '@wm/runtime/base';
|
|
8
|
+
{{WMComponentsImportStmts requiredWMComponents}}
|
|
9
|
+
|
|
10
|
+
@Component({
|
|
11
|
+
standalone: true,
|
|
12
|
+
selector: 'app-custom-{{name}}',
|
|
13
|
+
templateUrl: './{{name}}.component.html',
|
|
14
|
+
styleUrls: ['./{{name}}.component.css'],
|
|
15
|
+
encapsulation: ViewEncapsulation.None,
|
|
16
|
+
imports: [ {{WMComponentModuleStmts requiredWMComponents}}],
|
|
17
|
+
providers: [
|
|
18
|
+
{
|
|
19
|
+
provide: UserDefinedExecutionContext,
|
|
20
|
+
useExisting: {{componentName}}
|
|
21
|
+
}
|
|
22
|
+
]
|
|
23
|
+
})
|
|
24
|
+
export class {{componentName}} extends BaseCustomWidgetComponent {
|
|
25
|
+
|
|
26
|
+
override customWidgetName = '{{name}}';
|
|
27
|
+
[key: string]: any;
|
|
28
|
+
{{#if enableSpa}}spa = true;{{/if}}
|
|
29
|
+
|
|
30
|
+
constructor() {
|
|
31
|
+
super();
|
|
32
|
+
super.init();
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
getVariables() {
|
|
36
|
+
return getVariables();
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
evalUserScript(Widget, App, Utils) {
|
|
40
|
+
initScript(Widget, App, Utils);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Component, Injector, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { UserDefinedExecutionContext } from '@wm/core';
|
|
3
|
+
import { BaseLayoutComponent } from '@wm/runtime/base';
|
|
4
|
+
import { expressionData } from './{{name}}.component.expressions';
|
|
5
|
+
import { CommonModule as NgCommonModule } from '@angular/common';
|
|
6
|
+
import { RouterOutletDirective } from '@wm/components/page';
|
|
7
|
+
import { RouterModule } from '@angular/router';
|
|
8
|
+
{{WMComponentsImportStmts requiredWMComponents}}
|
|
9
|
+
|
|
10
|
+
{{PartialModuleImportStmts requiredPartials}}
|
|
11
|
+
|
|
12
|
+
const requiredComponentModules = [
|
|
13
|
+
{{WMComponentModuleStmts requiredWMComponents}},
|
|
14
|
+
RouterOutletDirective
|
|
15
|
+
];
|
|
16
|
+
|
|
17
|
+
const requiredPartialModules = [
|
|
18
|
+
{{PartialModuleStmts requiredPartials}}
|
|
19
|
+
];
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
@Component({
|
|
23
|
+
selector: 'app-page-{{name}}',
|
|
24
|
+
templateUrl: './{{name}}.component.html',
|
|
25
|
+
encapsulation: ViewEncapsulation.None,
|
|
26
|
+
providers: [
|
|
27
|
+
{
|
|
28
|
+
provide: UserDefinedExecutionContext,
|
|
29
|
+
useExisting: {{componentName}}
|
|
30
|
+
}
|
|
31
|
+
],
|
|
32
|
+
standalone: true,
|
|
33
|
+
imports: [
|
|
34
|
+
...requiredComponentModules,
|
|
35
|
+
...requiredPartialModules,
|
|
36
|
+
NgCommonModule,
|
|
37
|
+
RouterModule
|
|
38
|
+
],
|
|
39
|
+
{{#if hasCustomElement}}
|
|
40
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
41
|
+
{{/if}}
|
|
42
|
+
})
|
|
43
|
+
export class {{componentName}} extends BaseLayoutComponent {
|
|
44
|
+
layoutName = '{{name}}';
|
|
45
|
+
layoutPages = {{layoutPages}};
|
|
46
|
+
|
|
47
|
+
constructor(public injector: Injector) {
|
|
48
|
+
super();
|
|
49
|
+
super.init();
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
getExpressions() {
|
|
53
|
+
return expressionData;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { inject, NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule as NgCommonModule, APP_BASE_HREF } from '@angular/common';
|
|
3
|
+
import { Routes, RouterModule } from '@angular/router';
|
|
4
|
+
|
|
5
|
+
import { RuntimeBaseModule, AuthGuard, RoleGuard } from '@wm/runtime/base';
|
|
6
|
+
|
|
7
|
+
{{WMComponentsImportStmts requiredWMComponents}}
|
|
8
|
+
|
|
9
|
+
{{PartialModuleImportStmts requiredPartials}}
|
|
10
|
+
|
|
11
|
+
import { {{componentName}} } from './{{name}}.component';
|
|
12
|
+
|
|
13
|
+
const components = [{{componentName}}];
|
|
14
|
+
|
|
15
|
+
const routes: Routes = {{DefineLayoutRoutes name componentName pagesConfig securityConfig}};
|
|
16
|
+
|
|
17
|
+
const requiredComponentModules = [
|
|
18
|
+
{{WMComponentModuleStmts requiredWMComponents}}
|
|
19
|
+
];
|
|
20
|
+
|
|
21
|
+
const requiredPartialModules = [
|
|
22
|
+
{{PartialModuleStmts requiredPartials}}
|
|
23
|
+
];
|
|
24
|
+
|
|
25
|
+
@NgModule({
|
|
26
|
+
declarations: components,
|
|
27
|
+
imports: [
|
|
28
|
+
...requiredComponentModules,
|
|
29
|
+
...requiredPartialModules,
|
|
30
|
+
RouterModule.forChild(routes),
|
|
31
|
+
NgCommonModule,
|
|
32
|
+
RuntimeBaseModule
|
|
33
|
+
],
|
|
34
|
+
{{#if hasCustomElement}}
|
|
35
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
36
|
+
{{/if}}
|
|
37
|
+
exports: components
|
|
38
|
+
})
|
|
39
|
+
export class {{moduleName}} {
|
|
40
|
+
|
|
41
|
+
}
|
|
42
|
+
|