@wavemaker/app-ng-runtime 11.11.0-rc.6113 → 11.11.0-rc.6116

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.
@@ -6,7 +6,6 @@ import { AppManagerService, BasePageComponent, BasePartialComponent, BaseCustomW
6
6
  import { AppResourceManagerService } from './app-resource-manager.service';
7
7
  import { isString, isUndefined } from "lodash-es";
8
8
  import * as customWidgets from '@wavemaker/custom-widgets-m3';
9
- import { PageDirective } from '@wm/components/page';
10
9
  import * as i0 from "@angular/core";
11
10
  import * as i1 from "./app-resource-manager.service";
12
11
  import * as i2 from "@wm/core";
@@ -128,8 +127,7 @@ const getDynamicComponent = (componentName, type, template, css, script, variabl
128
127
  {
129
128
  provide: UserDefinedExecutionContext,
130
129
  useExisting: DynamicComponent
131
- },
132
- PageDirective,
130
+ }
133
131
  ]
134
132
  })(DynamicComponent);
135
133
  return component;
@@ -216,4 +214,4 @@ export class ComponentRefProviderService extends ComponentRefProvider {
216
214
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ComponentRefProviderService, [{
217
215
  type: Injectable
218
216
  }], () => [{ type: i1.AppResourceManagerService }, { type: i2.App }, { type: i3.AppManagerService }, { type: i0.Compiler }], null); })();
219
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LXJlZi1wcm92aWRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcnVudGltZS1keW5hbWljL3NyYy9hcHAvc2VydmljZXMvY29tcG9uZW50LXJlZi1wcm92aWRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsUUFBUSxFQUNSLFNBQVMsRUFDVCxzQkFBc0IsRUFBYyxNQUFNLEVBQzFDLFVBQVUsRUFDVixRQUFRLEVBQ1IsUUFBUSxFQUNSLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxZQUFZLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFDSCxpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLG9CQUFvQixFQUNwQix5QkFBeUIsRUFDekIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDMUIsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsRCxPQUFPLEtBQUssYUFBYSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFZcEQsTUFBTSxhQUFhLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQztBQUU3QyxNQUFNLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztBQUVyQyxNQUFNLHdCQUF3QixHQUFHLElBQUksR0FB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LENBQUMsUUFBUSxDQUFDLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7WUFDaEgsd0JBQXdCLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1lBRTNGLE9BQU8sbUJBQW1CLENBQUM7UUFDL0IsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDUCxJQUFJLEdBQUcsRUFBRSxDQUFDO2dCQUNOLE1BQU0sR0FBRyxHQUFHLDBCQUEwQixDQUFDO2dCQUN2Qyx1Q0FBdUM7Z0JBQ3ZDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FDckIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRywyQ0FBMkMsRUFDdkUsT0FBTyxDQUNWLENBQUM7WUFDTixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsdUJBQXVCO0lBQ2hCLDZCQUE2QjtRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzlCLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN0Qix3QkFBd0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs0SEExRlEsMkJBQTJCO3VFQUEzQiwyQkFBMkIsV0FBM0IsMkJBQTJCOztpRkFBM0IsMkJBQTJCO2NBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBpbGVyLFxuICAgIENvbXBvbmVudCxcbiAgICBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBmb3J3YXJkUmVmLCBJbmplY3QsXG4gICAgSW5qZWN0YWJsZSxcbiAgICBJbmplY3RvcixcbiAgICBOZ01vZHVsZSxcbiAgICBOT19FUlJPUlNfU0NIRU1BLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBcHAsIGdldFZhbGlkSlNPTiwgVXNlckRlZmluZWRFeGVjdXRpb25Db250ZXh0IH0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHsgdHJhbnNwaWxlLCBzY29wZUNvbXBvbmVudFN0eWxlcyB9IGZyb20gJ0B3bS90cmFuc3BpbGVyJztcbmltcG9ydCB7XG4gICAgQXBwTWFuYWdlclNlcnZpY2UsXG4gICAgQmFzZVBhZ2VDb21wb25lbnQsXG4gICAgQmFzZVBhcnRpYWxDb21wb25lbnQsXG4gICAgQmFzZUN1c3RvbVdpZGdldENvbXBvbmVudCxcbiAgICBCYXNlUHJlZmFiQ29tcG9uZW50LFxuICAgIENvbXBvbmVudFJlZlByb3ZpZGVyLFxuICAgIENvbXBvbmVudFR5cGUsXG4gICAgUnVudGltZUJhc2VNb2R1bGUsXG4gICAgZ2V0UHJlZmFiTWluSnNvblVybCxcbiAgICBnZXRQcmVmYWJQYXJ0aWFsSnNvblVybFxufSBmcm9tICdAd20vcnVudGltZS9iYXNlJztcblxuaW1wb3J0IHsgQXBwUmVzb3VyY2VNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4vYXBwLXJlc291cmNlLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBpc1N0cmluZywgaXNVbmRlZmluZWQgfSBmcm9tIFwibG9kYXNoLWVzXCI7XG5pbXBvcnQgKiBhcyBjdXN0b21XaWRnZXRzIGZyb20gJ0B3YXZlbWFrZXIvY3VzdG9tLXdpZGdldHMtbTMnO1xuaW1wb3J0IHsgUGFnZURpcmVjdGl2ZSB9IGZyb20gJ0B3bS9jb21wb25lbnRzL3BhZ2UnO1xuXG5pbnRlcmZhY2UgSVBhZ2VNaW5KU09OIHtcbiAgICBtYXJrdXA6IHN0cmluZztcbiAgICBzY3JpcHQ6IHN0cmluZztcbiAgICBzdHlsZXM6IHN0cmluZztcbiAgICB2YXJpYWJsZXM6IHN0cmluZztcbiAgICBjb25maWc/OiBzdHJpbmc7XG59XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiBhbnk7XG5cbmNvbnN0IGZyYWdtZW50Q2FjaGUgPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xuXG53aW5kb3cucmVzb3VyY2VDYWNoZSA9IGZyYWdtZW50Q2FjaGU7XG5cbmNvbnN0IGNvbXBvbmVudEZhY3RvcnlSZWZDYWNoZSA9IG5ldyBNYXA8Q29tcG9uZW50VHlwZSwgTWFwPHN0cmluZywgYW55Pj4oKTtcblxuY29tcG9uZW50RmFjdG9yeVJlZkNhY2hlLnNldChDb21wb25lbnRUeXBlLlBBR0UsIG5ldyBNYXA8c3RyaW5nLCBhbnk+KCkpO1xuY29tcG9uZW50RmFjdG9yeVJlZkNhY2hlLnNldChDb21wb25lbnRUeXBlLlBBUlRJQUwsIG5ldyBNYXA8c3RyaW5nLCBhbnk+KCkpO1xuY29tcG9uZW50RmFjdG9yeVJlZkNhY2hlLnNldChDb21wb25lbnRUeXBlLlBSRUZBQiwgbmV3IE1hcDxzdHJpbmcsIGFueT4oKSk7XG5jb21wb25lbnRGYWN0b3J5UmVmQ2FjaGUuc2V0KENvbXBvbmVudFR5cGUuV0lER0VULCBuZXcgTWFwPHN0cmluZywgYW55PigpKTtcblxuY29uc3QgX2RlY29kZVVSSUNvbXBvbmVudCA9IChzdHI6IHN0cmluZykgPT4gZGVjb2RlVVJJQ29tcG9uZW50KHN0ci5yZXBsYWNlKC9cXCsvZywgJyAnKSk7XG5cbmNvbnN0IGdldEZyYWdtZW50VXJsID0gKGZyYWdtZW50TmFtZTogc3RyaW5nLCB0eXBlOiBDb21wb25lbnRUeXBlLCBvcHRpb25zPykgPT4ge1xuICAgIGlmICh0eXBlID09PSBDb21wb25lbnRUeXBlLlBBR0UgfHwgdHlwZSA9PT0gQ29tcG9uZW50VHlwZS5QQVJUSUFMKSB7XG4gICAgICAgIHJldHVybiBvcHRpb25zICYmIG9wdGlvbnMucHJlZmFiID8gZ2V0UHJlZmFiUGFydGlhbEpzb25Vcmwob3B0aW9ucy5wcmVmYWIsIGZyYWdtZW50TmFtZSkgOiBgLi9wYWdlcy8ke2ZyYWdtZW50TmFtZX0vcGFnZS5taW4uanNvbmA7XG4gICAgfSBlbHNlIGlmICh0eXBlID09PSBDb21wb25lbnRUeXBlLlBSRUZBQikge1xuICAgICAgICByZXR1cm4gZ2V0UHJlZmFiTWluSnNvblVybChmcmFnbWVudE5hbWUpO1xuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gQ29tcG9uZW50VHlwZS5XSURHRVQpIHtcbiAgICAgICAgcmV0dXJuIGAuL2N1c3RvbS13aWRnZXRzLyR7ZnJhZ21lbnROYW1lfS9wYWdlLm1pbi5qc29uYFxuICAgIH1cbn07XG5cbmNvbnN0IHNjcmlwdENhY2hlID0gbmV3IE1hcDxzdHJpbmcsIEZ1bmN0aW9uPigpO1xuY29uc3QgZXhlY1NjcmlwdCA9IChcbiAgICBzY3JpcHQ6IHN0cmluZyxcbiAgICBpZGVudGlmaWVyOiBzdHJpbmcsXG4gICAgY3R4OiBzdHJpbmcsXG4gICAgaW5zdGFuY2U6IGFueSxcbiAgICBhcHA6IGFueSxcbiAgICB1dGlsczogYW55XG4pID0+IHtcbiAgICBsZXQgZm4gPSBzY3JpcHRDYWNoZS5nZXQoaWRlbnRpZmllcik7XG4gICAgLy8gRml4IGZvciBbV01TLTIxMTk2XTogSW5jb3JyZWN0IHNjcmlwdCBpcyBiZWluZyBhc3NpZ25lZCwgIHdoZW4gMiBwcmVmYWJzIGhhdmUgc2FtZSBwYXJ0aWFsIG5hbWUgKGkuZS4gc2FtZSBpZGVudGlmaWVyKS5cbiAgICBpZiAoKGN0eCA9PT0gJ1BhcnRpYWwnICYmICFpc1VuZGVmaW5lZChpbnN0YW5jZS5QcmVmYWIpKSB8fCAhZm4pIHtcbiAgICAgICAgZm4gPSBuZXcgRnVuY3Rpb24oY3R4LCAnQXBwJywgJ1V0aWxzJywgc2NyaXB0KTtcbiAgICAgICAgc2NyaXB0Q2FjaGUuc2V0KGlkZW50aWZpZXIsIGZuKTtcbiAgICB9XG4gICAgZm4oaW5zdGFuY2UsIGFwcCwgdXRpbHMpO1xufTtcblxuY2xhc3MgQmFzZUR5bmFtaWNDb21wb25lbnQge1xuICAgIGluaXQoKSB7IH1cbn1cblxuY29uc3QgZ2V0RHluYW1pY01vZHVsZSA9IChjb21wb25lbnRSZWY6IGFueSkgPT4ge1xuICAgIHJldHVybiBOZ01vZHVsZSh7XG4gICAgICAgIGRlY2xhcmF0aW9uczogW2NvbXBvbmVudFJlZl0sXG4gICAgICAgIGltcG9ydHM6IFtcbiAgICAgICAgICAgIFJ1bnRpbWVCYXNlTW9kdWxlLFxuICAgICAgICBdLFxuICAgICAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTk9fRVJST1JTX1NDSEVNQV1cbiAgICB9KShjbGFzcyBEeW5hbWljTW9kdWxlIHsgfSk7XG59O1xuXG5jb25zdCBnZXREeW5hbWljQ29tcG9uZW50ID0gKFxuICAgIGNvbXBvbmVudE5hbWUsXG4gICAgdHlwZTogQ29tcG9uZW50VHlwZSxcbiAgICB0ZW1wbGF0ZTogc3RyaW5nLFxuICAgIGNzczogc3RyaW5nLFxuICAgIHNjcmlwdDogYW55LFxuICAgIHZhcmlhYmxlczogc3RyaW5nLFxuKSA9PiB7XG5cbiAgICBjb25zdCBjb21wb25lbnREZWYgPSB7XG4gICAgICAgIHRlbXBsYXRlLFxuICAgICAgICBzdHlsZXM6IFtjc3NdLFxuICAgICAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG4gICAgfTtcblxuICAgIGxldCBCYXNlQ2xhc3M6IGFueSA9IEJhc2VEeW5hbWljQ29tcG9uZW50O1xuICAgIGxldCBzZWxlY3RvciA9ICcnO1xuICAgIGxldCBjb250ZXh0ID0gJyc7XG5cbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgY2FzZSBDb21wb25lbnRUeXBlLlBBR0U6XG4gICAgICAgICAgICBCYXNlQ2xhc3MgPSBCYXNlUGFnZUNvbXBvbmVudDtcbiAgICAgICAgICAgIHNlbGVjdG9yID0gYGFwcC1wYWdlLSR7Y29tcG9uZW50TmFtZX1gO1xuICAgICAgICAgICAgY29udGV4dCA9ICdQYWdlJztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIENvbXBvbmVudFR5cGUuUEFSVElBTDpcbiAgICAgICAgICAgIEJhc2VDbGFzcyA9IEJhc2VQYXJ0aWFsQ29tcG9uZW50O1xuICAgICAgICAgICAgc2VsZWN0b3IgPSBgYXBwLXBhcnRpYWwtJHtjb21wb25lbnROYW1lfWA7XG4gICAgICAgICAgICBjb250ZXh0ID0gJ1BhcnRpYWwnO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgQ29tcG9uZW50VHlwZS5QUkVGQUI6XG4gICAgICAgICAgICBCYXNlQ2xhc3MgPSBCYXNlUHJlZmFiQ29tcG9uZW50O1xuICAgICAgICAgICAgc2VsZWN0b3IgPSBgYXBwLXByZWZhYi0ke2NvbXBvbmVudE5hbWV9YDtcbiAgICAgICAgICAgIGNvbnRleHQgPSAnUHJlZmFiJztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIENvbXBvbmVudFR5cGUuV0lER0VUOlxuICAgICAgICAgICAgQmFzZUNsYXNzID0gQmFzZUN1c3RvbVdpZGdldENvbXBvbmVudDtcbiAgICAgICAgICAgIHNlbGVjdG9yID0gYGFwcC1jdXN0b20tJHtjb21wb25lbnROYW1lfWA7XG4gICAgICAgICAgICBjb250ZXh0ID0gJ1dpZGdldCc7XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjbGFzcyBEeW5hbWljQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNsYXNzIHtcbiAgICAgICAgaXNEeW5hbWljQ29tcG9uZW50OiBib29sZWFuID0gdHJ1ZTtcbiAgICAgICAgcGFnZU5hbWU7XG4gICAgICAgIHBhcnRpYWxOYW1lO1xuICAgICAgICBwcmVmYWJOYW1lO1xuICAgICAgICBjdXN0b21XaWRnZXROYW1lO1xuICAgICAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEluamVjdG9yKSBwdWJsaWMgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgICAgICBzdXBlcigpO1xuICAgICAgICAgICAgdGhpcy5pbmplY3RvciA9IGluamVjdG9yO1xuICAgICAgICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBDb21wb25lbnRUeXBlLlBBR0U6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFnZU5hbWUgPSBjb21wb25lbnROYW1lO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIENvbXBvbmVudFR5cGUuUEFSVElBTDpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXJ0aWFsTmFtZSA9IGNvbXBvbmVudE5hbWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgQ29tcG9uZW50VHlwZS5QUkVGQUI6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJlZmFiTmFtZSA9IGNvbXBvbmVudE5hbWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgQ29tcG9uZW50VHlwZS5XSURHRVQ6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VzdG9tV2lkZ2V0TmFtZSA9IGNvbXBvbmVudE5hbWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdXBlci5pbml0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBldmFsVXNlclNjcmlwdChpbnN0YW5jZTogYW55LCBhcHBDb250ZXh0OiBhbnksIHV0aWxzOiBhbnkpIHtcbiAgICAgICAgICAgIGV4ZWNTY3JpcHQoc2NyaXB0LCBzZWxlY3RvciwgY29udGV4dCwgaW5zdGFuY2UsIGFwcENvbnRleHQsIHV0aWxzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGdldFZhcmlhYmxlcygpIHtcbiAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKHZhcmlhYmxlcyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpbiBwcmV2aWV3IG1vZGUsIHRoZXJlIHdpbGwgYmUgbm8gZnVuY3Rpb24gcmVnaXN0ZXJlZC4gZnVuY3Rpb25zIHdpbGwgYmUgZ2VuZXJhdGVkIGR5bmFtaWNhbGx5IHRocm91Z2ggJHBhcnNlRXZlbnQgYW5kICRwYXJzZUV4cHJcbiAgICAgICAgZ2V0RXhwcmVzc2lvbnMoKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBjb21wb25lbnQgPSBDb21wb25lbnQoe1xuICAgICAgICAuLi5jb21wb25lbnREZWYsXG4gICAgICAgIHNlbGVjdG9yLFxuICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBwcm92aWRlOiBVc2VyRGVmaW5lZEV4ZWN1dGlvbkNvbnRleHQsXG4gICAgICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IER5bmFtaWNDb21wb25lbnRcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBQYWdlRGlyZWN0aXZlLFxuICAgICAgICBdXG4gICAgfSkoRHluYW1pY0NvbXBvbmVudClcbiAgICByZXR1cm4gY29tcG9uZW50O1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbXBvbmVudFJlZlByb3ZpZGVyU2VydmljZSBleHRlbmRzIENvbXBvbmVudFJlZlByb3ZpZGVyIHtcblxuICAgIHByaXZhdGUgbG9hZFJlc291cmNlc09mRnJhZ21lbnQoY29tcG9uZW50TmFtZSwgY29tcG9uZW50VHlwZSwgb3B0aW9ucz8pOiBQcm9taXNlPElQYWdlTWluSlNPTj4ge1xuICAgICAgICBjb25zdCB1cmwgPSBnZXRGcmFnbWVudFVybChjb21wb25lbnROYW1lLCBjb21wb25lbnRUeXBlLCBvcHRpb25zKTtcblxuICAgICAgICBjb25zdCByZXNvdXJjZSA9IGZyYWdtZW50Q2FjaGUuZ2V0KHVybCk7XG5cbiAgICAgICAgaWYgKHJlc291cmNlKSB7XG4gICAgICAgICAgICByZXR1cm4gcmVzb3VyY2U7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcHJvbWlzZSA9ICgoKGNvbXBvbmVudFR5cGUgPT09IENvbXBvbmVudFR5cGUuV0lER0VUICYmICFjdXN0b21XaWRnZXRzW2NvbXBvbmVudE5hbWVdKSB8fCBjb21wb25lbnRUeXBlICE9PSBDb21wb25lbnRUeXBlLldJREdFVCkgPyB0aGlzLnJlc291Y2VNbmdyLmdldCh1cmwsIHRydWUpIDogUHJvbWlzZS5yZXNvbHZlKGN1c3RvbVdpZGdldHNbY29tcG9uZW50TmFtZV0pKVxuICAgICAgICAgICAgLnRoZW4oKHsgbWFya3VwLCBzY3JpcHQsIHN0eWxlcywgdmFyaWFibGVzLCBjb25maWcgfTogSVBhZ2VNaW5KU09OKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmt1cDogdHJhbnNwaWxlKF9kZWNvZGVVUklDb21wb25lbnQobWFya3VwKSkubWFya3VwLFxuICAgICAgICAgICAgICAgICAgICBzY3JpcHQ6IF9kZWNvZGVVUklDb21wb25lbnQoc2NyaXB0KSxcbiAgICAgICAgICAgICAgICAgICAgc3R5bGVzOiBzY29wZUNvbXBvbmVudFN0eWxlcyhjb21wb25lbnROYW1lLCBjb21wb25lbnRUeXBlLCBfZGVjb2RlVVJJQ29tcG9uZW50KHN0eWxlcykpLFxuICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IGdldFZhbGlkSlNPTihfZGVjb2RlVVJJQ29tcG9uZW50KHZhcmlhYmxlcykpLFxuICAgICAgICAgICAgICAgICAgICAuLi4oY29uZmlnID8geyBjb25maWc6IGdldFZhbGlkSlNPTihfZGVjb2RlVVJJQ29tcG9uZW50KGNvbmZpZykpIH0gOiB7fSlcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGZyYWdtZW50Q2FjaGUuc2V0KHVybCwgUHJvbWlzZS5yZXNvbHZlKHJlc3BvbnNlKSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgICAgICAgICB9LCBlID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdGF0dXMgPSBlLmRldGFpbHMuc3RhdHVzO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVycm9yTXNnTWFwID0ge1xuICAgICAgICAgICAgICAgICAgICA0MDQ6IHRoaXMuYXBwLmFwcExvY2FsZS5NRVNTQUdFX1BBR0VfTk9UX0ZPVU5EIHx8ICdUaGUgcGFnZSB5b3UgYXJlIHRyeWluZyB0byByZWFjaCBpcyBub3QgYXZhaWxhYmxlJyxcbiAgICAgICAgICAgICAgICAgICAgNDAzOiB0aGlzLmFwcC5hcHBMb2NhbGUuTEFCRUxfQUNDRVNTX0RFTklFRCB8fCAnQWNjZXNzIERlbmllZCdcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvck1zZ01hcFtzdGF0dXNdKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICBmcmFnbWVudENhY2hlLnNldCh1cmwsIHByb21pc2UpO1xuICAgICAgICByZXR1cm4gcHJvbWlzZTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZXNvdWNlTW5ncjogQXBwUmVzb3VyY2VNYW5hZ2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhcHA6IEFwcCxcbiAgICAgICAgcHJpdmF0ZSBhcHBNYW5hZ2VyOiBBcHBNYW5hZ2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjb21waWxlcjogQ29tcGlsZXJcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0Q29tcG9uZW50RmFjdG9yeVJlZihjb21wb25lbnROYW1lOiBzdHJpbmcsIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUsIG9wdGlvbnM/OiB7fSk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIC8vIGNoZWNrIGluIHRoZSBjYWNoZS5cbiAgICAgICAgY29uc3QgY29tcG9uZW50RmFjdG9yeU1hcCA9IGNvbXBvbmVudEZhY3RvcnlSZWZDYWNoZS5nZXQoY29tcG9uZW50VHlwZSk7XG4gICAgICAgIGxldCBjb21wb25lbnRGYWN0b3J5UmVmO1xuICAgICAgICBpZiAoY29tcG9uZW50RmFjdG9yeU1hcCkge1xuICAgICAgICAgICAgY29uc3QgdXBkYXRlZENvbXBvbmVudE5hbWUgPSAob3B0aW9ucyAmJiBvcHRpb25zWydwcmVmYWInXSkgPyBvcHRpb25zWydwcmVmYWInXSArIGNvbXBvbmVudE5hbWUgOiBjb21wb25lbnROYW1lO1xuICAgICAgICAgICAgY29tcG9uZW50RmFjdG9yeVJlZiA9IGNvbXBvbmVudEZhY3RvcnlNYXAuZ2V0KHVwZGF0ZWRDb21wb25lbnROYW1lKTtcblxuICAgICAgICAgICAgaWYgKGNvbXBvbmVudEZhY3RvcnlSZWYpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29tcG9uZW50RmFjdG9yeVJlZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRSZXNvdXJjZXNPZkZyYWdtZW50KGNvbXBvbmVudE5hbWUsIGNvbXBvbmVudFR5cGUsIG9wdGlvbnMpXG4gICAgICAgICAgICAudGhlbigoeyBtYXJrdXAsIHNjcmlwdCwgc3R5bGVzLCB2YXJpYWJsZXMgfSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudERlZiA9IGdldER5bmFtaWNDb21wb25lbnQoY29tcG9uZW50TmFtZSwgY29tcG9uZW50VHlwZSwgbWFya3VwLCBzdHlsZXMsIHNjcmlwdCwgSlNPTi5zdHJpbmdpZnkodmFyaWFibGVzKSk7XG4gICAgICAgICAgICAgICAgY29uc3QgbW9kdWxlRGVmID0gZ2V0RHluYW1pY01vZHVsZShjb21wb25lbnREZWYpO1xuXG4gICAgICAgICAgICAgICAgY29tcG9uZW50RmFjdG9yeVJlZiA9IHRoaXMuY29tcGlsZXJcbiAgICAgICAgICAgICAgICAgICAgLmNvbXBpbGVNb2R1bGVBbmRBbGxDb21wb25lbnRzU3luYyhtb2R1bGVEZWYpXG4gICAgICAgICAgICAgICAgICAgIC5jb21wb25lbnRGYWN0b3JpZXNcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihmYWN0b3J5ID0+IC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhY3RvcnkuY29tcG9uZW50VHlwZSA9PT0gY29tcG9uZW50RGVmKVswXTtcbiAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkQ29tcG9uZW50TmFtZSA9IChvcHRpb25zICYmIG9wdGlvbnNbJ3ByZWZhYiddKSA/IG9wdGlvbnNbJ3ByZWZhYiddICsgY29tcG9uZW50TmFtZSA6IGNvbXBvbmVudE5hbWU7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50RmFjdG9yeVJlZkNhY2hlLmdldChjb21wb25lbnRUeXBlKS5zZXQodXBkYXRlZENvbXBvbmVudE5hbWUsIGNvbXBvbmVudEZhY3RvcnlSZWYpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbXBvbmVudEZhY3RvcnlSZWY7XG4gICAgICAgICAgICB9LCAoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtc2cgPSBcIkVycm9yIHdoaWxlIGxvYWRpbmcgcGFnZVwiO1xuICAgICAgICAgICAgICAgICAgICAvLyBjb25zb2xlIHRoZSBlcnJvciBmb3IgZWFzeSBkZWJ1Z2dpbmdcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cobXNnLCBlcnIpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFwcE1hbmFnZXIubm90aWZ5QXBwKFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNTdHJpbmcoZXJyKSA/IGVyciA6IG1zZyArICcsIGNoZWNrIGJyb3dzZXIgY29uc29sZSBmb3IgZXJyb3IgZGV0YWlscycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnZXJyb3InXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gY2xlYXJzIHRoZSBjYWNoZSBtYXBcbiAgICBwdWJsaWMgY2xlYXJDb21wb25lbnRGYWN0b3J5UmVmQ2FjaGUoKSB7XG4gICAgICAgIHRoaXMucmVzb3VjZU1uZ3IuY2xlYXJDYWNoZSgpO1xuICAgICAgICBmcmFnbWVudENhY2hlLmNsZWFyKCk7XG4gICAgICAgIGNvbXBvbmVudEZhY3RvcnlSZWZDYWNoZS5mb3JFYWNoKG1hcCA9PiB7XG4gICAgICAgICAgICBtYXAuY2xlYXIoKTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LXJlZi1wcm92aWRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcnVudGltZS1keW5hbWljL3NyYy9hcHAvc2VydmljZXMvY29tcG9uZW50LXJlZi1wcm92aWRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsUUFBUSxFQUNSLFNBQVMsRUFDVCxzQkFBc0IsRUFBYyxNQUFNLEVBQzFDLFVBQVUsRUFDVixRQUFRLEVBQ1IsUUFBUSxFQUNSLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxZQUFZLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFDSCxpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLG9CQUFvQixFQUNwQix5QkFBeUIsRUFDekIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDMUIsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsRCxPQUFPLEtBQUssYUFBYSxNQUFNLDhCQUE4QixDQUFDOzs7OztBQVk5RCxNQUFNLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO0FBRTdDLE1BQU0sQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO0FBRXJDLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSxHQUFHLEVBQW1DLENBQUM7QUFFNUUsd0JBQXdCLENBQUMsR0FBRyxDQUFDLGFB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aEgsd0JBQXdCLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1lBRTNGLE9BQU8sbUJBQW1CLENBQUM7UUFDL0IsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDUCxJQUFJLEdBQUcsRUFBRSxDQUFDO2dCQUNOLE1BQU0sR0FBRyxHQUFHLDBCQUEwQixDQUFDO2dCQUN2Qyx1Q0FBdUM7Z0JBQ3ZDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FDckIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRywyQ0FBMkMsRUFDdkUsT0FBTyxDQUNWLENBQUM7WUFDTixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsdUJBQXVCO0lBQ2hCLDZCQUE2QjtRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzlCLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN0Qix3QkFBd0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs0SEExRlEsMkJBQTJCO3VFQUEzQiwyQkFBMkIsV0FBM0IsMkJBQTJCOztpRkFBM0IsMkJBQTJCO2NBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBpbGVyLFxuICAgIENvbXBvbmVudCxcbiAgICBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBmb3J3YXJkUmVmLCBJbmplY3QsXG4gICAgSW5qZWN0YWJsZSxcbiAgICBJbmplY3RvcixcbiAgICBOZ01vZHVsZSxcbiAgICBOT19FUlJPUlNfU0NIRU1BLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBcHAsIGdldFZhbGlkSlNPTiwgVXNlckRlZmluZWRFeGVjdXRpb25Db250ZXh0IH0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHsgdHJhbnNwaWxlLCBzY29wZUNvbXBvbmVudFN0eWxlcyB9IGZyb20gJ0B3bS90cmFuc3BpbGVyJztcbmltcG9ydCB7XG4gICAgQXBwTWFuYWdlclNlcnZpY2UsXG4gICAgQmFzZVBhZ2VDb21wb25lbnQsXG4gICAgQmFzZVBhcnRpYWxDb21wb25lbnQsXG4gICAgQmFzZUN1c3RvbVdpZGdldENvbXBvbmVudCxcbiAgICBCYXNlUHJlZmFiQ29tcG9uZW50LFxuICAgIENvbXBvbmVudFJlZlByb3ZpZGVyLFxuICAgIENvbXBvbmVudFR5cGUsXG4gICAgUnVudGltZUJhc2VNb2R1bGUsXG4gICAgZ2V0UHJlZmFiTWluSnNvblVybCxcbiAgICBnZXRQcmVmYWJQYXJ0aWFsSnNvblVybFxufSBmcm9tICdAd20vcnVudGltZS9iYXNlJztcblxuaW1wb3J0IHsgQXBwUmVzb3VyY2VNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4vYXBwLXJlc291cmNlLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBpc1N0cmluZywgaXNVbmRlZmluZWQgfSBmcm9tIFwibG9kYXNoLWVzXCI7XG5pbXBvcnQgKiBhcyBjdXN0b21XaWRnZXRzIGZyb20gJ0B3YXZlbWFrZXIvY3VzdG9tLXdpZGdldHMtbTMnO1xuXG5pbnRlcmZhY2UgSVBhZ2VNaW5KU09OIHtcbiAgICBtYXJrdXA6IHN0cmluZztcbiAgICBzY3JpcHQ6IHN0cmluZztcbiAgICBzdHlsZXM6IHN0cmluZztcbiAgICB2YXJpYWJsZXM6IHN0cmluZztcbiAgICBjb25maWc/OiBzdHJpbmc7XG59XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiBhbnk7XG5cbmNvbnN0IGZyYWdtZW50Q2FjaGUgPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xuXG53aW5kb3cucmVzb3VyY2VDYWNoZSA9IGZyYWdtZW50Q2FjaGU7XG5cbmNvbnN0IGNvbXBvbmVudEZhY3RvcnlSZWZDYWNoZSA9IG5ldyBNYXA8Q29tcG9uZW50VHlwZSwgTWFwPHN0cmluZywgYW55Pj4oKTtcblxuY29tcG9uZW50RmFjdG9yeVJlZkNhY2hlLnNldChDb21wb25lbnRUeXBlLlBBR0UsIG5ldyBNYXA8c3RyaW5nLCBhbnk+KCkpO1xuY29tcG9uZW50RmFjdG9yeVJlZkNhY2hlLnNldChDb21wb25lbnRUeXBlLlBBUlRJQUwsIG5ldyBNYXA8c3RyaW5nLCBhbnk+KCkpO1xuY29tcG9uZW50RmFjdG9yeVJlZkNhY2hlLnNldChDb21wb25lbnRUeXBlLlBSRUZBQiwgbmV3IE1hcDxzdHJpbmcsIGFueT4oKSk7XG5jb21wb25lbnRGYWN0b3J5UmVmQ2FjaGUuc2V0KENvbXBvbmVudFR5cGUuV0lER0VULCBuZXcgTWFwPHN0cmluZywgYW55PigpKTtcblxuY29uc3QgX2RlY29kZVVSSUNvbXBvbmVudCA9IChzdHI6IHN0cmluZykgPT4gZGVjb2RlVVJJQ29tcG9uZW50KHN0ci5yZXBsYWNlKC9cXCsvZywgJyAnKSk7XG5cbmNvbnN0IGdldEZyYWdtZW50VXJsID0gKGZyYWdtZW50TmFtZTogc3RyaW5nLCB0eXBlOiBDb21wb25lbnRUeXBlLCBvcHRpb25zPykgPT4ge1xuICAgIGlmICh0eXBlID09PSBDb21wb25lbnRUeXBlLlBBR0UgfHwgdHlwZSA9PT0gQ29tcG9uZW50VHlwZS5QQVJUSUFMKSB7XG4gICAgICAgIHJldHVybiBvcHRpb25zICYmIG9wdGlvbnMucHJlZmFiID8gZ2V0UHJlZmFiUGFydGlhbEpzb25Vcmwob3B0aW9ucy5wcmVmYWIsIGZyYWdtZW50TmFtZSkgOiBgLi9wYWdlcy8ke2ZyYWdtZW50TmFtZX0vcGFnZS5taW4uanNvbmA7XG4gICAgfSBlbHNlIGlmICh0eXBlID09PSBDb21wb25lbnRUeXBlLlBSRUZBQikge1xuICAgICAgICByZXR1cm4gZ2V0UHJlZmFiTWluSnNvblVybChmcmFnbWVudE5hbWUpO1xuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gQ29tcG9uZW50VHlwZS5XSURHRVQpIHtcbiAgICAgICAgcmV0dXJuIGAuL2N1c3RvbS13aWRnZXRzLyR7ZnJhZ21lbnROYW1lfS9wYWdlLm1pbi5qc29uYFxuICAgIH1cbn07XG5cbmNvbnN0IHNjcmlwdENhY2hlID0gbmV3IE1hcDxzdHJpbmcsIEZ1bmN0aW9uPigpO1xuY29uc3QgZXhlY1NjcmlwdCA9IChcbiAgICBzY3JpcHQ6IHN0cmluZyxcbiAgICBpZGVudGlmaWVyOiBzdHJpbmcsXG4gICAgY3R4OiBzdHJpbmcsXG4gICAgaW5zdGFuY2U6IGFueSxcbiAgICBhcHA6IGFueSxcbiAgICB1dGlsczogYW55XG4pID0+IHtcbiAgICBsZXQgZm4gPSBzY3JpcHRDYWNoZS5nZXQoaWRlbnRpZmllcik7XG4gICAgLy8gRml4IGZvciBbV01TLTIxMTk2XTogSW5jb3JyZWN0IHNjcmlwdCBpcyBiZWluZyBhc3NpZ25lZCwgIHdoZW4gMiBwcmVmYWJzIGhhdmUgc2FtZSBwYXJ0aWFsIG5hbWUgKGkuZS4gc2FtZSBpZGVudGlmaWVyKS5cbiAgICBpZiAoKGN0eCA9PT0gJ1BhcnRpYWwnICYmICFpc1VuZGVmaW5lZChpbnN0YW5jZS5QcmVmYWIpKSB8fCAhZm4pIHtcbiAgICAgICAgZm4gPSBuZXcgRnVuY3Rpb24oY3R4LCAnQXBwJywgJ1V0aWxzJywgc2NyaXB0KTtcbiAgICAgICAgc2NyaXB0Q2FjaGUuc2V0KGlkZW50aWZpZXIsIGZuKTtcbiAgICB9XG4gICAgZm4oaW5zdGFuY2UsIGFwcCwgdXRpbHMpO1xufTtcblxuY2xhc3MgQmFzZUR5bmFtaWNDb21wb25lbnQge1xuICAgIGluaXQoKSB7IH1cbn1cblxuY29uc3QgZ2V0RHluYW1pY01vZHVsZSA9IChjb21wb25lbnRSZWY6IGFueSkgPT4ge1xuICAgIHJldHVybiBOZ01vZHVsZSh7XG4gICAgICAgIGRlY2xhcmF0aW9uczogW2NvbXBvbmVudFJlZl0sXG4gICAgICAgIGltcG9ydHM6IFtcbiAgICAgICAgICAgIFJ1bnRpbWVCYXNlTW9kdWxlLFxuICAgICAgICBdLFxuICAgICAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTk9fRVJST1JTX1NDSEVNQV1cbiAgICB9KShjbGFzcyBEeW5hbWljTW9kdWxlIHsgfSk7XG59O1xuXG5jb25zdCBnZXREeW5hbWljQ29tcG9uZW50ID0gKFxuICAgIGNvbXBvbmVudE5hbWUsXG4gICAgdHlwZTogQ29tcG9uZW50VHlwZSxcbiAgICB0ZW1wbGF0ZTogc3RyaW5nLFxuICAgIGNzczogc3RyaW5nLFxuICAgIHNjcmlwdDogYW55LFxuICAgIHZhcmlhYmxlczogc3RyaW5nLFxuKSA9PiB7XG5cbiAgICBjb25zdCBjb21wb25lbnREZWYgPSB7XG4gICAgICAgIHRlbXBsYXRlLFxuICAgICAgICBzdHlsZXM6IFtjc3NdLFxuICAgICAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG4gICAgfTtcblxuICAgIGxldCBCYXNlQ2xhc3M6IGFueSA9IEJhc2VEeW5hbWljQ29tcG9uZW50O1xuICAgIGxldCBzZWxlY3RvciA9ICcnO1xuICAgIGxldCBjb250ZXh0ID0gJyc7XG5cbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgY2FzZSBDb21wb25lbnRUeXBlLlBBR0U6XG4gICAgICAgICAgICBCYXNlQ2xhc3MgPSBCYXNlUGFnZUNvbXBvbmVudDtcbiAgICAgICAgICAgIHNlbGVjdG9yID0gYGFwcC1wYWdlLSR7Y29tcG9uZW50TmFtZX1gO1xuICAgICAgICAgICAgY29udGV4dCA9ICdQYWdlJztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIENvbXBvbmVudFR5cGUuUEFSVElBTDpcbiAgICAgICAgICAgIEJhc2VDbGFzcyA9IEJhc2VQYXJ0aWFsQ29tcG9uZW50O1xuICAgICAgICAgICAgc2VsZWN0b3IgPSBgYXBwLXBhcnRpYWwtJHtjb21wb25lbnROYW1lfWA7XG4gICAgICAgICAgICBjb250ZXh0ID0gJ1BhcnRpYWwnO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgQ29tcG9uZW50VHlwZS5QUkVGQUI6XG4gICAgICAgICAgICBCYXNlQ2xhc3MgPSBCYXNlUHJlZmFiQ29tcG9uZW50O1xuICAgICAgICAgICAgc2VsZWN0b3IgPSBgYXBwLXByZWZhYi0ke2NvbXBvbmVudE5hbWV9YDtcbiAgICAgICAgICAgIGNvbnRleHQgPSAnUHJlZmFiJztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIENvbXBvbmVudFR5cGUuV0lER0VUOlxuICAgICAgICAgICAgQmFzZUNsYXNzID0gQmFzZUN1c3RvbVdpZGdldENvbXBvbmVudDtcbiAgICAgICAgICAgIHNlbGVjdG9yID0gYGFwcC1jdXN0b20tJHtjb21wb25lbnROYW1lfWA7XG4gICAgICAgICAgICBjb250ZXh0ID0gJ1dpZGdldCc7XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjbGFzcyBEeW5hbWljQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNsYXNzIHtcbiAgICAgICAgaXNEeW5hbWljQ29tcG9uZW50OiBib29sZWFuID0gdHJ1ZTtcbiAgICAgICAgcGFnZU5hbWU7XG4gICAgICAgIHBhcnRpYWxOYW1lO1xuICAgICAgICBwcmVmYWJOYW1lO1xuICAgICAgICBjdXN0b21XaWRnZXROYW1lO1xuICAgICAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEluamVjdG9yKSBwdWJsaWMgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgICAgICBzdXBlcigpO1xuICAgICAgICAgICAgdGhpcy5pbmplY3RvciA9IGluamVjdG9yO1xuICAgICAgICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBDb21wb25lbnRUeXBlLlBBR0U6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFnZU5hbWUgPSBjb21wb25lbnROYW1lO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIENvbXBvbmVudFR5cGUuUEFSVElBTDpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXJ0aWFsTmFtZSA9IGNvbXBvbmVudE5hbWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgQ29tcG9uZW50VHlwZS5QUkVGQUI6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJlZmFiTmFtZSA9IGNvbXBvbmVudE5hbWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgQ29tcG9uZW50VHlwZS5XSURHRVQ6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VzdG9tV2lkZ2V0TmFtZSA9IGNvbXBvbmVudE5hbWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdXBlci5pbml0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBldmFsVXNlclNjcmlwdChpbnN0YW5jZTogYW55LCBhcHBDb250ZXh0OiBhbnksIHV0aWxzOiBhbnkpIHtcbiAgICAgICAgICAgIGV4ZWNTY3JpcHQoc2NyaXB0LCBzZWxlY3RvciwgY29udGV4dCwgaW5zdGFuY2UsIGFwcENvbnRleHQsIHV0aWxzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGdldFZhcmlhYmxlcygpIHtcbiAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKHZhcmlhYmxlcyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpbiBwcmV2aWV3IG1vZGUsIHRoZXJlIHdpbGwgYmUgbm8gZnVuY3Rpb24gcmVnaXN0ZXJlZC4gZnVuY3Rpb25zIHdpbGwgYmUgZ2VuZXJhdGVkIGR5bmFtaWNhbGx5IHRocm91Z2ggJHBhcnNlRXZlbnQgYW5kICRwYXJzZUV4cHJcbiAgICAgICAgZ2V0RXhwcmVzc2lvbnMoKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBjb21wb25lbnQgPSBDb21wb25lbnQoe1xuICAgICAgICAuLi5jb21wb25lbnREZWYsXG4gICAgICAgIHNlbGVjdG9yLFxuICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBwcm92aWRlOiBVc2VyRGVmaW5lZEV4ZWN1dGlvbkNvbnRleHQsXG4gICAgICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IER5bmFtaWNDb21wb25lbnRcbiAgICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgIH0pKER5bmFtaWNDb21wb25lbnQpXG4gICAgcmV0dXJuIGNvbXBvbmVudDtcbn07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb21wb25lbnRSZWZQcm92aWRlclNlcnZpY2UgZXh0ZW5kcyBDb21wb25lbnRSZWZQcm92aWRlciB7XG5cbiAgICBwcml2YXRlIGxvYWRSZXNvdXJjZXNPZkZyYWdtZW50KGNvbXBvbmVudE5hbWUsIGNvbXBvbmVudFR5cGUsIG9wdGlvbnM/KTogUHJvbWlzZTxJUGFnZU1pbkpTT04+IHtcbiAgICAgICAgY29uc3QgdXJsID0gZ2V0RnJhZ21lbnRVcmwoY29tcG9uZW50TmFtZSwgY29tcG9uZW50VHlwZSwgb3B0aW9ucyk7XG5cbiAgICAgICAgY29uc3QgcmVzb3VyY2UgPSBmcmFnbWVudENhY2hlLmdldCh1cmwpO1xuXG4gICAgICAgIGlmIChyZXNvdXJjZSkge1xuICAgICAgICAgICAgcmV0dXJuIHJlc291cmNlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHByb21pc2UgPSAoKChjb21wb25lbnRUeXBlID09PSBDb21wb25lbnRUeXBlLldJREdFVCAmJiAhY3VzdG9tV2lkZ2V0c1tjb21wb25lbnROYW1lXSkgfHwgY29tcG9uZW50VHlwZSAhPT0gQ29tcG9uZW50VHlwZS5XSURHRVQpID8gdGhpcy5yZXNvdWNlTW5nci5nZXQodXJsLCB0cnVlKSA6IFByb21pc2UucmVzb2x2ZShjdXN0b21XaWRnZXRzW2NvbXBvbmVudE5hbWVdKSlcbiAgICAgICAgICAgIC50aGVuKCh7IG1hcmt1cCwgc2NyaXB0LCBzdHlsZXMsIHZhcmlhYmxlcywgY29uZmlnIH06IElQYWdlTWluSlNPTikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJrdXA6IHRyYW5zcGlsZShfZGVjb2RlVVJJQ29tcG9uZW50KG1hcmt1cCkpLm1hcmt1cCxcbiAgICAgICAgICAgICAgICAgICAgc2NyaXB0OiBfZGVjb2RlVVJJQ29tcG9uZW50KHNjcmlwdCksXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlczogc2NvcGVDb21wb25lbnRTdHlsZXMoY29tcG9uZW50TmFtZSwgY29tcG9uZW50VHlwZSwgX2RlY29kZVVSSUNvbXBvbmVudChzdHlsZXMpKSxcbiAgICAgICAgICAgICAgICAgICAgdmFyaWFibGVzOiBnZXRWYWxpZEpTT04oX2RlY29kZVVSSUNvbXBvbmVudCh2YXJpYWJsZXMpKSxcbiAgICAgICAgICAgICAgICAgICAgLi4uKGNvbmZpZyA/IHsgY29uZmlnOiBnZXRWYWxpZEpTT04oX2RlY29kZVVSSUNvbXBvbmVudChjb25maWcpKSB9IDoge30pXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBmcmFnbWVudENhY2hlLnNldCh1cmwsIFByb21pc2UucmVzb2x2ZShyZXNwb25zZSkpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgICAgICAgICAgfSwgZSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhdHVzID0gZS5kZXRhaWxzLnN0YXR1cztcbiAgICAgICAgICAgICAgICBjb25zdCBlcnJvck1zZ01hcCA9IHtcbiAgICAgICAgICAgICAgICAgICAgNDA0OiB0aGlzLmFwcC5hcHBMb2NhbGUuTUVTU0FHRV9QQUdFX05PVF9GT1VORCB8fCAnVGhlIHBhZ2UgeW91IGFyZSB0cnlpbmcgdG8gcmVhY2ggaXMgbm90IGF2YWlsYWJsZScsXG4gICAgICAgICAgICAgICAgICAgIDQwMzogdGhpcy5hcHAuYXBwTG9jYWxlLkxBQkVMX0FDQ0VTU19ERU5JRUQgfHwgJ0FjY2VzcyBEZW5pZWQnXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3JNc2dNYXBbc3RhdHVzXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgZnJhZ21lbnRDYWNoZS5zZXQodXJsLCBwcm9taXNlKTtcbiAgICAgICAgcmV0dXJuIHByb21pc2U7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVzb3VjZU1uZ3I6IEFwcFJlc291cmNlTWFuYWdlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgYXBwOiBBcHAsXG4gICAgICAgIHByaXZhdGUgYXBwTWFuYWdlcjogQXBwTWFuYWdlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgY29tcGlsZXI6IENvbXBpbGVyXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldENvbXBvbmVudEZhY3RvcnlSZWYoY29tcG9uZW50TmFtZTogc3RyaW5nLCBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLCBvcHRpb25zPzoge30pOiBQcm9taXNlPGFueT4ge1xuICAgICAgICAvLyBjaGVjayBpbiB0aGUgY2FjaGUuXG4gICAgICAgIGNvbnN0IGNvbXBvbmVudEZhY3RvcnlNYXAgPSBjb21wb25lbnRGYWN0b3J5UmVmQ2FjaGUuZ2V0KGNvbXBvbmVudFR5cGUpO1xuICAgICAgICBsZXQgY29tcG9uZW50RmFjdG9yeVJlZjtcbiAgICAgICAgaWYgKGNvbXBvbmVudEZhY3RvcnlNYXApIHtcbiAgICAgICAgICAgIGNvbnN0IHVwZGF0ZWRDb21wb25lbnROYW1lID0gKG9wdGlvbnMgJiYgb3B0aW9uc1sncHJlZmFiJ10pID8gb3B0aW9uc1sncHJlZmFiJ10gKyBjb21wb25lbnROYW1lIDogY29tcG9uZW50TmFtZTtcbiAgICAgICAgICAgIGNvbXBvbmVudEZhY3RvcnlSZWYgPSBjb21wb25lbnRGYWN0b3J5TWFwLmdldCh1cGRhdGVkQ29tcG9uZW50TmFtZSk7XG5cbiAgICAgICAgICAgIGlmIChjb21wb25lbnRGYWN0b3J5UmVmKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbXBvbmVudEZhY3RvcnlSZWY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5sb2FkUmVzb3VyY2VzT2ZGcmFnbWVudChjb21wb25lbnROYW1lLCBjb21wb25lbnRUeXBlLCBvcHRpb25zKVxuICAgICAgICAgICAgLnRoZW4oKHsgbWFya3VwLCBzY3JpcHQsIHN0eWxlcywgdmFyaWFibGVzIH0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb21wb25lbnREZWYgPSBnZXREeW5hbWljQ29tcG9uZW50KGNvbXBvbmVudE5hbWUsIGNvbXBvbmVudFR5cGUsIG1hcmt1cCwgc3R5bGVzLCBzY3JpcHQsIEpTT04uc3RyaW5naWZ5KHZhcmlhYmxlcykpO1xuICAgICAgICAgICAgICAgIGNvbnN0IG1vZHVsZURlZiA9IGdldER5bmFtaWNNb2R1bGUoY29tcG9uZW50RGVmKTtcblxuICAgICAgICAgICAgICAgIGNvbXBvbmVudEZhY3RvcnlSZWYgPSB0aGlzLmNvbXBpbGVyXG4gICAgICAgICAgICAgICAgICAgIC5jb21waWxlTW9kdWxlQW5kQWxsQ29tcG9uZW50c1N5bmMobW9kdWxlRGVmKVxuICAgICAgICAgICAgICAgICAgICAuY29tcG9uZW50RmFjdG9yaWVzXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoZmFjdG9yeSA9PiAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgICAgICAgICBmYWN0b3J5LmNvbXBvbmVudFR5cGUgPT09IGNvbXBvbmVudERlZilbMF07XG4gICAgICAgICAgICAgICAgY29uc3QgdXBkYXRlZENvbXBvbmVudE5hbWUgPSAob3B0aW9ucyAmJiBvcHRpb25zWydwcmVmYWInXSkgPyBvcHRpb25zWydwcmVmYWInXSArIGNvbXBvbmVudE5hbWUgOiBjb21wb25lbnROYW1lO1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudEZhY3RvcnlSZWZDYWNoZS5nZXQoY29tcG9uZW50VHlwZSkuc2V0KHVwZGF0ZWRDb21wb25lbnROYW1lLCBjb21wb25lbnRGYWN0b3J5UmVmKTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBjb21wb25lbnRGYWN0b3J5UmVmO1xuICAgICAgICAgICAgfSwgKGVycikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbXNnID0gXCJFcnJvciB3aGlsZSBsb2FkaW5nIHBhZ2VcIjtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29uc29sZSB0aGUgZXJyb3IgZm9yIGVhc3kgZGVidWdnaW5nXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKG1zZywgZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hcHBNYW5hZ2VyLm5vdGlmeUFwcChcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzU3RyaW5nKGVycikgPyBlcnIgOiBtc2cgKyAnLCBjaGVjayBicm93c2VyIGNvbnNvbGUgZm9yIGVycm9yIGRldGFpbHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ2Vycm9yJ1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIGNsZWFycyB0aGUgY2FjaGUgbWFwXG4gICAgcHVibGljIGNsZWFyQ29tcG9uZW50RmFjdG9yeVJlZkNhY2hlKCkge1xuICAgICAgICB0aGlzLnJlc291Y2VNbmdyLmNsZWFyQ2FjaGUoKTtcbiAgICAgICAgZnJhZ21lbnRDYWNoZS5jbGVhcigpO1xuICAgICAgICBjb21wb25lbnRGYWN0b3J5UmVmQ2FjaGUuZm9yRWFjaChtYXAgPT4ge1xuICAgICAgICAgICAgbWFwLmNsZWFyKCk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,7 +1,8 @@
1
- import { ApplicationRef, enableProdMode } from '@angular/core';
2
- import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
3
- import { AppModule } from './app/app.module';
1
+ import { enableProdMode } from '@angular/core';
4
2
  import { isEmpty } from "lodash-es";
3
+ import { bootstrapApplication } from '@angular/platform-browser';
4
+ import { AppComponent } from '@wm/runtime/base';
5
+ import { appConfig } from './app/app.config';
5
6
  const DEBUG_MODE = 'debugMode';
6
7
  if (sessionStorage.getItem(DEBUG_MODE) !== 'true') {
7
8
  enableProdMode();
@@ -10,14 +11,13 @@ console.time('bootstrap');
10
11
  document.addEventListener('DOMContentLoaded', () => {
11
12
  new Promise(resolve => {
12
13
  resolve();
13
- }).then(() => platformBrowserDynamic().bootstrapModule(AppModule))
14
- .then((appModuleRef) => {
15
- const applicationRef = appModuleRef.injector.get(ApplicationRef);
14
+ }).then(() => bootstrapApplication(AppComponent, appConfig))
15
+ .then((appRef) => {
16
16
  window.addEventListener('unload', () => {
17
- applicationRef.components.map(c => c && c.destroy());
17
+ appRef.components.map(c => c?.destroy());
18
18
  });
19
- console.timeEnd('bootstrap');
20
- }, err => console.log(err));
19
+ })
20
+ .catch(err => console.error('Error bootstrapping app:', err));
21
21
  });
22
22
  window.debugMode = function (on) {
23
23
  if (isEmpty(on)) {
@@ -30,4 +30,4 @@ window.debugMode = function (on) {
30
30
  }
31
31
  };
32
32
  export default () => { };
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3J1bnRpbWUtZHluYW1pYy9zcmMvbWFpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0MsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUVsQyxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUM7QUFFL0IsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLE1BQU0sRUFBRSxDQUFDO0lBQ2hELGNBQWMsRUFBRSxDQUFDO0FBQ3JCLENBQUM7QUFFRCxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBRzFCLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLEVBQUU7SUFDL0MsSUFBSSxPQUFPLENBQWMsT0FBTyxDQUFDLEVBQUU7UUFDM0IsT0FBTyxFQUFFLENBQUM7SUFDbEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixFQUFFLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzdELElBQUksQ0FBQyxDQUFDLFlBQW9DLEVBQUUsRUFBRTtRQUMzQyxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtZQUNuQyxjQUFjLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN6RCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQ3BDLENBQUMsQ0FBQyxDQUFDO0FBRUYsTUFBYyxDQUFDLFNBQVMsR0FBRyxVQUFTLEVBQUU7SUFDbkMsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNkLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNwQyxJQUFJLGNBQWMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUM7UUFDL0MsY0FBYyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDMUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM3QixDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsZUFBZSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHBsaWNhdGlvblJlZiwgZW5hYmxlUHJvZE1vZGUsIE5nTW9kdWxlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBwbGF0Zm9ybUJyb3dzZXJEeW5hbWljIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci1keW5hbWljJztcblxuaW1wb3J0IHsgQXBwTW9kdWxlIH0gZnJvbSAnLi9hcHAvYXBwLm1vZHVsZSc7XG5pbXBvcnQge2lzRW1wdHl9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuY29uc3QgREVCVUdfTU9ERSA9ICdkZWJ1Z01vZGUnO1xuXG5pZiAoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShERUJVR19NT0RFKSAhPT0gJ3RydWUnKSB7XG4gICAgZW5hYmxlUHJvZE1vZGUoKTtcbn1cblxuY29uc29sZS50aW1lKCdib290c3RyYXAnKTtcblxuXG5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgKCkgPT4ge1xuICAgIG5ldyBQcm9taXNlPHZvaWR8RXZlbnQ+KCByZXNvbHZlID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICB9KS50aGVuKCgpID0+IHBsYXRmb3JtQnJvd3NlckR5bmFtaWMoKS5ib290c3RyYXBNb2R1bGUoQXBwTW9kdWxlKSlcbiAgICAgICAgLnRoZW4oKGFwcE1vZHVsZVJlZjogTmdNb2R1bGVSZWY8QXBwTW9kdWxlPikgPT4ge1xuICAgICAgICAgICAgY29uc3QgYXBwbGljYXRpb25SZWYgPSBhcHBNb2R1bGVSZWYuaW5qZWN0b3IuZ2V0KEFwcGxpY2F0aW9uUmVmKTtcbiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd1bmxvYWQnLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgYXBwbGljYXRpb25SZWYuY29tcG9uZW50cy5tYXAoYyA9PiBjICYmIGMuZGVzdHJveSgpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCdib290c3RyYXAnKTtcbiAgICAgICAgfSwgZXJyID0+IGNvbnNvbGUubG9nKGVycikpO1xufSk7XG5cbih3aW5kb3cgYXMgYW55KS5kZWJ1Z01vZGUgPSBmdW5jdGlvbihvbikge1xuICAgIGlmIChpc0VtcHR5KG9uKSkge1xuICAgICAgICBvbiA9IHRydWU7XG4gICAgfVxuICAgIGNvbnN0IHZhbHVlID0gb24gPyAndHJ1ZScgOiAnZmFsc2UnO1xuICAgIGlmIChzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKERFQlVHX01PREUpICE9PSB2YWx1ZSkge1xuICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKERFQlVHX01PREUsIHZhbHVlKTtcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xuICAgIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0ICgpID0+IHt9O1xuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3J1bnRpbWUtZHluYW1pYy9zcmMvbWFpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFN0MsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDO0FBRS9CLElBQUksY0FBYyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUNoRCxjQUFjLEVBQUUsQ0FBQztBQUNyQixDQUFDO0FBRUQsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUcxQixRQUFRLENBQUMsZ0JBQWdCLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxFQUFFO0lBQ2pELElBQUksT0FBTyxDQUFlLE9BQU8sQ0FBQyxFQUFFO1FBQ2hDLE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQztTQUN6RCxJQUFJLENBQUMsQ0FBQyxNQUFzQixFQUFFLEVBQUU7UUFDL0IsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDckMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQztTQUNELEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNsRSxDQUFDLENBQUMsQ0FBQztBQUVGLE1BQWMsQ0FBQyxTQUFTLEdBQUcsVUFBVSxFQUFFO0lBQ3BDLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDZCxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDcEMsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEtBQUssRUFBRSxDQUFDO1FBQy9DLGNBQWMsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDN0IsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLGVBQWUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBwbGljYXRpb25SZWYsIGVuYWJsZVByb2RNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tIFwibG9kYXNoLWVzXCI7XG5pbXBvcnQgeyBib290c3RyYXBBcHBsaWNhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgQXBwQ29tcG9uZW50IH0gZnJvbSAnQHdtL3J1bnRpbWUvYmFzZSc7XG5pbXBvcnQgeyBhcHBDb25maWcgfSBmcm9tICcuL2FwcC9hcHAuY29uZmlnJztcblxuY29uc3QgREVCVUdfTU9ERSA9ICdkZWJ1Z01vZGUnO1xuXG5pZiAoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShERUJVR19NT0RFKSAhPT0gJ3RydWUnKSB7XG4gICAgZW5hYmxlUHJvZE1vZGUoKTtcbn1cblxuY29uc29sZS50aW1lKCdib290c3RyYXAnKTtcblxuXG5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgKCkgPT4ge1xuICBuZXcgUHJvbWlzZTxFdmVudCB8IHZvaWQ+KHJlc29sdmUgPT4ge1xuICAgICAgcmVzb2x2ZSgpO1xuICB9KS50aGVuKCgpID0+IGJvb3RzdHJhcEFwcGxpY2F0aW9uKEFwcENvbXBvbmVudCwgYXBwQ29uZmlnKSlcbiAgICAudGhlbigoYXBwUmVmOiBBcHBsaWNhdGlvblJlZikgPT4geyBcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd1bmxvYWQnLCAoKSA9PiB7XG4gICAgICAgIGFwcFJlZi5jb21wb25lbnRzLm1hcChjID0+IGM/LmRlc3Ryb3koKSk7XG4gICAgICB9KTtcbiAgICB9KVxuICAgIC5jYXRjaChlcnIgPT4gY29uc29sZS5lcnJvcignRXJyb3IgYm9vdHN0cmFwcGluZyBhcHA6JywgZXJyKSk7XG59KTtcblxuKHdpbmRvdyBhcyBhbnkpLmRlYnVnTW9kZSA9IGZ1bmN0aW9uIChvbikge1xuICAgIGlmIChpc0VtcHR5KG9uKSkge1xuICAgICAgICBvbiA9IHRydWU7XG4gICAgfVxuICAgIGNvbnN0IHZhbHVlID0gb24gPyAndHJ1ZScgOiAnZmFsc2UnO1xuICAgIGlmIChzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKERFQlVHX01PREUpICE9PSB2YWx1ZSkge1xuICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKERFQlVHX01PREUsIHZhbHVlKTtcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xuICAgIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0ICgpID0+IHsgfTtcbiJdfQ==
@@ -1,28 +1,41 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Injectable, NgModule, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA, ViewEncapsulation, Inject, Injector, enableProdMode, ApplicationRef } from '@angular/core';
3
- import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
4
- import { __decorate, __param, __metadata } from 'tslib';
5
- import { BrowserModule } from '@angular/platform-browser';
6
- import { CommonModule } from '@angular/common';
2
+ import { Component, Injectable, NgModule, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA, ViewEncapsulation, Inject, Injector, importProvidersFrom, APP_INITIALIZER, LOCALE_ID, enableProdMode } from '@angular/core';
3
+ import { isUndefined, isString, isEmpty } from 'lodash-es';
4
+ import { bootstrapApplication, BrowserModule } from '@angular/platform-browser';
5
+ import * as i4 from '@wm/runtime/base';
6
+ import { ComponentType, BasePageComponent, SecurityConfigResolve, MetadataResolve, AppExtensionJSResolve, EmptyPageComponent, PrefabPreviewComponent, CanDeactivatePageGuard, CustomwidgetConfigProvider, AppJSProvider, AppVariablesProvider, AppExtensionProvider, getPrefabPartialJsonUrl, getPrefabMinJsonUrl, RuntimeBaseModule, BaseCustomWidgetComponent, BasePrefabComponent, BasePartialComponent, ComponentRefProvider, PrefabConfigProvider, getPrefabConfigUrl, AppJSResolve, HttpCallInterceptor, AppRef, ToasterServiceImpl, I18nServiceImpl, SpinnerServiceImpl, NavigationServiceImpl, AppDefaultsService, DynamicComponentRefProviderService, WmRouteReuseStrategy, PipeService, AppManagerService, PrefabManagerService, AuthGuard, RoleGuard, PageNotFoundGuard, I18nResolve, AppComponent, REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS, WM_MODULES_FOR_ROOT } from '@wm/runtime/base';
7
7
  import * as i1 from '@angular/router';
8
- import { RouterModule, RouteReuseStrategy } from '@angular/router';
8
+ import { provideRouter, withHashLocation, withComponentInputBinding, RouteReuseStrategy, RouterModule } from '@angular/router';
9
9
  import * as i1$1 from '@angular/common/http';
10
- import { HttpClientXsrfModule, HttpClientModule } from '@angular/common/http';
10
+ import { provideHttpClient, withInterceptorsFromDi, withXsrfConfiguration, HTTP_INTERCEPTORS, HttpClientXsrfModule, HttpClientModule } from '@angular/common/http';
11
+ import { provideAnimations, BrowserAnimationsModule } from '@angular/platform-browser/animations';
12
+ import { WmComponentsModule, DialogServiceImpl, SanitizePipe, ToDatePipe, FilterPipe, TrailingZeroDecimalPipe, TrustAsPipe, ImagePipe, CustomPipe } from '@wm/components/base';
13
+ import * as i5 from '@wm/core';
14
+ import { appendScriptToHead, UserDefinedExecutionContext, getValidJSON, _WM_APP_PROJECT, AbstractI18nService, App, AbstractToasterService, AbstractSpinnerService, AbstractNavigationService, AbstractDialogService, AppDefaults, DynamicComponentRefProvider, PartialRefProvider, CustomWidgetRefProvider, AbstractHttpService, getWmProjectProperties } from '@wm/core';
15
+ import * as i2 from '@wm/variables';
16
+ import { VariablesService, MetadataService } from '@wm/variables';
17
+ import * as i3 from '@wm/security';
18
+ import { SecurityService } from '@wm/security';
19
+ import { HttpServiceImpl } from '@wm/http';
20
+ import { OAuthService } from '@wm/oAuth';
21
+ import { ModalModule } from 'ngx-bootstrap/modal';
22
+ import { ToastNoAnimationModule } from 'ngx-toastr';
23
+ import { BsDatepickerModule } from 'ngx-bootstrap/datepicker';
24
+ import { NgCircleProgressModule } from 'ng-circle-progress';
25
+ import { DecimalPipe, DatePipe, CommonModule } from '@angular/common';
26
+ import { __decorate, __param, __metadata } from 'tslib';
27
+ import { transpile, scopeComponentStyles } from '@wm/transpiler';
28
+ import * as customWidgets from '@wavemaker/custom-widgets-m3';
29
+ import { PageDirective, LayoutDirective, ContentComponent, PageContentComponent, SpaPageDirective, RouterOutletDirective } from '@wm/components/page';
11
30
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
12
31
  import { TypeaheadModule } from 'ngx-bootstrap/typeahead';
13
32
  import { TimepickerModule } from 'ngx-bootstrap/timepicker';
14
33
  import { ProgressbarModule } from 'ngx-bootstrap/progressbar';
15
34
  import { PaginationModule } from 'ngx-bootstrap/pagination';
16
- import { ModalModule } from 'ngx-bootstrap/modal';
17
35
  import { TooltipModule } from 'ngx-bootstrap/tooltip';
18
- import { BsDatepickerModule } from 'ngx-bootstrap/datepicker';
19
36
  import { BsDropdownModule } from 'ngx-bootstrap/dropdown';
20
37
  import { PopoverModule } from 'ngx-bootstrap/popover';
21
- import { NgCircleProgressModule } from 'ng-circle-progress';
22
- import { ToastNoAnimationModule } from 'ngx-toastr';
23
38
  import { CarouselModule } from 'ngx-bootstrap/carousel';
24
- import * as i5 from '@wm/core';
25
- import { appendScriptToHead, UserDefinedExecutionContext, getValidJSON, getWmProjectProperties, PartialRefProvider, CustomWidgetRefProvider, AbstractHttpService, App } from '@wm/core';
26
39
  import { AnchorComponent, AudioComponent, HtmlDirective, IconComponent, IframeComponent, LabelDirective, PictureDirective, SpinnerComponent, VideoComponent } from '@wm/components/basic';
27
40
  import { ProgressBarComponent, ProgressCircleComponent } from '@wm/components/basic/progress';
28
41
  import { RichTextEditorComponent } from '@wm/components/basic/rich-text-editor';
@@ -63,23 +76,12 @@ import { CarouselDirective, CarouselTemplateDirective } from '@wm/components/adv
63
76
  import { LoginComponent } from '@wm/components/advanced/login';
64
77
  import { MarqueeDirective } from '@wm/components/advanced/marquee';
65
78
  import { CustomWidgetDirective, CustomWidgetContainerDirective } from '@wm/components/advanced/custom';
66
- import { PageDirective, LayoutDirective, ContentComponent, PageContentComponent, SpaPageDirective, RouterOutletDirective } from '@wm/components/page';
67
79
  import { FooterDirective } from '@wm/components/page/footer';
68
80
  import { HeaderComponent } from '@wm/components/page/header';
69
81
  import { LeftPanelDirective } from '@wm/components/page/left-panel';
70
82
  import { RightPanelDirective } from '@wm/components/page/right-panel';
71
83
  import { TopNavDirective } from '@wm/components/page/top-nav';
72
84
  import { PrefabDirective, PrefabContainerDirective } from '@wm/components/prefab';
73
- import * as i4 from '@wm/runtime/base';
74
- import { ComponentType, BasePageComponent, SecurityConfigResolve, MetadataResolve, AppExtensionJSResolve, EmptyPageComponent, PrefabPreviewComponent, CanDeactivatePageGuard, AppJSProvider, AppVariablesProvider, AppExtensionProvider, getPrefabPartialJsonUrl, getPrefabMinJsonUrl, RuntimeBaseModule, BaseCustomWidgetComponent, BasePrefabComponent, BasePartialComponent, ComponentRefProvider, CustomwidgetConfigProvider, PrefabConfigProvider, getPrefabConfigUrl, REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS, WM_MODULES_FOR_ROOT, WmRouteReuseStrategy, AppComponent } from '@wm/runtime/base';
75
- import { WmComponentsModule } from '@wm/components/base';
76
- import * as i2 from '@wm/variables';
77
- import * as i3 from '@wm/security';
78
- import { transpile, scopeComponentStyles } from '@wm/transpiler';
79
- import { isUndefined, isString, isEmpty } from 'lodash-es';
80
- import * as customWidgets from '@wavemaker/custom-widgets-m3';
81
- import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
82
- import { HttpServiceImpl } from '@wm/http';
83
85
 
84
86
  class PageWrapperComponent {
85
87
  constructor(injector, route, vcRef, appRef, metadataService, securityService, appManager, app, ngZone, elRef, spinnerService, componentRefProvider, router) {
@@ -201,6 +203,25 @@ const routes = [
201
203
  }
202
204
  ];
203
205
 
206
+ const cache$2 = new Map();
207
+ class CustomwidgetConfigProviderService extends CustomwidgetConfigProvider {
208
+ constructor() {
209
+ super();
210
+ }
211
+ getConfig(widgetname) {
212
+ return new Promise((res, rej) => {
213
+ Promise.resolve(window['resourceCache'].get(`./custom-widgets/${widgetname}/page.min.json`)).then((pageInfo) => {
214
+ res(pageInfo.config);
215
+ });
216
+ });
217
+ }
218
+ static { this.ɵfac = function CustomwidgetConfigProviderService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CustomwidgetConfigProviderService)(); }; }
219
+ static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CustomwidgetConfigProviderService, factory: CustomwidgetConfigProviderService.ɵfac }); }
220
+ }
221
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CustomwidgetConfigProviderService, [{
222
+ type: Injectable
223
+ }], () => [], null); })();
224
+
204
225
  class AppJSProviderService extends AppJSProvider {
205
226
  constructor($http) {
206
227
  super();
@@ -221,22 +242,22 @@ class AppJSProviderService extends AppJSProvider {
221
242
  }]
222
243
  }], () => [{ type: i1$1.HttpClient }], null); })();
223
244
 
224
- const cache$2 = new Map();
245
+ const cache$1 = new Map();
225
246
  class AppResourceManagerService {
226
247
  get(url, useCache) {
227
- const cachedResponse = cache$2.get(url);
248
+ const cachedResponse = cache$1.get(url);
228
249
  if (cachedResponse) {
229
250
  return Promise.resolve(cachedResponse);
230
251
  }
231
252
  return this.$http.get(url).then(response => {
232
253
  if (useCache) {
233
- cache$2.set(url, response);
254
+ cache$1.set(url, response);
234
255
  }
235
256
  return response;
236
257
  });
237
258
  }
238
259
  clearCache() {
239
- cache$2.clear();
260
+ cache$1.clear();
240
261
  }
241
262
  constructor($http) {
242
263
  this.$http = $http;
@@ -403,8 +424,7 @@ const getDynamicComponent = (componentName, type, template, css, script, variabl
403
424
  {
404
425
  provide: UserDefinedExecutionContext,
405
426
  useExisting: DynamicComponent
406
- },
407
- PageDirective,
427
+ }
408
428
  ]
409
429
  })(DynamicComponent);
410
430
  return component;
@@ -492,25 +512,6 @@ class ComponentRefProviderService extends ComponentRefProvider {
492
512
  type: Injectable
493
513
  }], () => [{ type: AppResourceManagerService }, { type: i5.App }, { type: i4.AppManagerService }, { type: i0.Compiler }], null); })();
494
514
 
495
- const cache$1 = new Map();
496
- class CustomwidgetConfigProviderService extends CustomwidgetConfigProvider {
497
- constructor() {
498
- super();
499
- }
500
- getConfig(widgetname) {
501
- return new Promise((res, rej) => {
502
- Promise.resolve(window['resourceCache'].get(`./custom-widgets/${widgetname}/page.min.json`)).then((pageInfo) => {
503
- res(pageInfo.config);
504
- });
505
- });
506
- }
507
- static { this.ɵfac = function CustomwidgetConfigProviderService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CustomwidgetConfigProviderService)(); }; }
508
- static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CustomwidgetConfigProviderService, factory: CustomwidgetConfigProviderService.ɵfac }); }
509
- }
510
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CustomwidgetConfigProviderService, [{
511
- type: Injectable
512
- }], () => [], null); })();
513
-
514
515
  const cache = new Map();
515
516
  class PrefabConfigProviderService extends PrefabConfigProvider {
516
517
  constructor(resourceMngr) {
@@ -535,6 +536,145 @@ class PrefabConfigProviderService extends PrefabConfigProvider {
535
536
  type: Injectable
536
537
  }], () => [{ type: AppResourceManagerService }], null); })();
537
538
 
539
+ const wmModules = [
540
+ importProvidersFrom(ModalModule.forRoot(), ToastNoAnimationModule.forRoot({ maxOpened: 1, autoDismiss: true }), BsDatepickerModule.forRoot(), NgCircleProgressModule.forRoot())
541
+ ];
542
+ const xsrfHeaderName$1 = "X-WM-XSRF-TOKEN";
543
+ const initializeProjectDetails = () => {
544
+ let cdnUrl = document.querySelector('[name="deployUrl"]') && document.querySelector('[name="deployUrl"]').getAttribute('content');
545
+ _WM_APP_PROJECT.isPreview = cdnUrl ? false : true;
546
+ const apiUrl = document.querySelector('[name="apiUrl"]') && document.querySelector('[name="apiUrl"]').getAttribute('content');
547
+ //for preview
548
+ if (!cdnUrl) {
549
+ cdnUrl = document.querySelector('[name="cdnUrl"]') && document.querySelector('[name="cdnUrl"]').getAttribute('content');
550
+ }
551
+ _WM_APP_PROJECT.id = location.href.split('/')[3];
552
+ // Integration with third party apps like in SSPA/WebComponents, this meta tag with cdnUrl will not be there then default it to ng-bundle/
553
+ _WM_APP_PROJECT.apiUrl = apiUrl || './';
554
+ _WM_APP_PROJECT.cdnUrl = cdnUrl || 'ng-bundle/';
555
+ _WM_APP_PROJECT.ngDest = 'ng-bundle/';
556
+ try {
557
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
558
+ //@ts-ignore
559
+ __webpack_require__.p = __webpack_public_path__ = cdnUrl;
560
+ }
561
+ catch (e) {
562
+ //for app preview there is no webpack. Don't do anything.
563
+ }
564
+ };
565
+ function InitializeApp(I18nService, AppJSResolve) {
566
+ return async () => {
567
+ initializeProjectDetails();
568
+ await AppJSResolve.resolve();
569
+ return I18nService.loadDefaultLocale();
570
+ };
571
+ }
572
+ function setAngularLocale(I18nService) {
573
+ initializeProjectDetails();
574
+ return I18nService.deduceAppLocale();
575
+ }
576
+ const appConfig = {
577
+ providers: [
578
+ // Provide Angular core services
579
+ provideRouter(routes, withHashLocation(), withComponentInputBinding()),
580
+ provideHttpClient(withInterceptorsFromDi(), withXsrfConfiguration({
581
+ cookieName: "wm_xsrf_token",
582
+ headerName: xsrfHeaderName$1
583
+ })),
584
+ provideAnimations(),
585
+ // Provide application-specific services
586
+ {
587
+ provide: APP_INITIALIZER,
588
+ useFactory: InitializeApp,
589
+ deps: [AbstractI18nService, AppJSResolve],
590
+ multi: true
591
+ },
592
+ {
593
+ provide: LOCALE_ID,
594
+ useFactory: setAngularLocale,
595
+ deps: [AbstractI18nService]
596
+ },
597
+ {
598
+ provide: HTTP_INTERCEPTORS,
599
+ useClass: HttpCallInterceptor,
600
+ multi: true
601
+ },
602
+ { provide: App, useClass: AppRef },
603
+ { provide: AbstractToasterService, useClass: ToasterServiceImpl },
604
+ { provide: AbstractI18nService, useClass: I18nServiceImpl },
605
+ { provide: AbstractSpinnerService, useClass: SpinnerServiceImpl },
606
+ { provide: AbstractNavigationService, useClass: NavigationServiceImpl },
607
+ { provide: AbstractDialogService, useClass: DialogServiceImpl },
608
+ { provide: AppDefaults, useClass: AppDefaultsService },
609
+ { provide: DynamicComponentRefProvider, useClass: DynamicComponentRefProviderService },
610
+ { provide: AppJSProvider, useClass: AppJSProviderService },
611
+ { provide: AppVariablesProvider, useClass: AppVariablesProviderService },
612
+ { provide: AppExtensionProvider, useClass: AppExtensionProviderService },
613
+ { provide: ComponentRefProvider, useClass: ComponentRefProviderService },
614
+ { provide: PartialRefProvider, useClass: ComponentRefProviderService },
615
+ { provide: CustomWidgetRefProvider, useClass: ComponentRefProviderService },
616
+ { provide: CustomwidgetConfigProvider, useClass: CustomwidgetConfigProviderService },
617
+ { provide: PrefabConfigProvider, useClass: PrefabConfigProviderService },
618
+ { provide: RouteReuseStrategy, useClass: WmRouteReuseStrategy },
619
+ { provide: AbstractHttpService, useClass: HttpServiceImpl },
620
+ AppResourceManagerService,
621
+ PipeService,
622
+ DecimalPipe,
623
+ SanitizePipe,
624
+ ToDatePipe,
625
+ FilterPipe,
626
+ TrailingZeroDecimalPipe,
627
+ TrustAsPipe,
628
+ ImagePipe,
629
+ CustomPipe,
630
+ Location,
631
+ DatePipe,
632
+ AppManagerService,
633
+ PrefabManagerService,
634
+ AuthGuard,
635
+ RoleGuard,
636
+ PageNotFoundGuard,
637
+ CanDeactivatePageGuard,
638
+ AppJSResolve,
639
+ AppExtensionJSResolve,
640
+ I18nResolve,
641
+ SecurityService,
642
+ OAuthService,
643
+ VariablesService,
644
+ MetadataService,
645
+ ...wmModules,
646
+ PageDirective
647
+ ]
648
+ };
649
+
650
+ const DEBUG_MODE = 'debugMode';
651
+ if (sessionStorage.getItem(DEBUG_MODE) !== 'true') {
652
+ enableProdMode();
653
+ }
654
+ console.time('bootstrap');
655
+ document.addEventListener('DOMContentLoaded', () => {
656
+ new Promise(resolve => {
657
+ resolve();
658
+ }).then(() => bootstrapApplication(AppComponent, appConfig))
659
+ .then((appRef) => {
660
+ window.addEventListener('unload', () => {
661
+ appRef.components.map(c => c?.destroy());
662
+ });
663
+ })
664
+ .catch(err => console.error('Error bootstrapping app:', err));
665
+ });
666
+ window.debugMode = function (on) {
667
+ if (isEmpty(on)) {
668
+ on = true;
669
+ }
670
+ const value = on ? 'true' : 'false';
671
+ if (sessionStorage.getItem(DEBUG_MODE) !== value) {
672
+ sessionStorage.setItem(DEBUG_MODE, value);
673
+ window.location.reload();
674
+ }
675
+ };
676
+ var main = () => { };
677
+
538
678
  const routerModule = RouterModule.forRoot(routes, { useHash: true, scrollPositionRestoration: 'top' });
539
679
  const toastrModule = ToastNoAnimationModule.forRoot({ maxOpened: 1, autoDismiss: true });
540
680
  // In angular 15, xsrf headerName should not be null. Angular 15 is not using default header value like it used to send in calls
@@ -731,35 +871,6 @@ AppModule = __decorate([
731
871
  __metadata("design:paramtypes", [App, Injector, ComponentRefProvider])
732
872
  ], AppModule);
733
873
 
734
- const DEBUG_MODE = 'debugMode';
735
- if (sessionStorage.getItem(DEBUG_MODE) !== 'true') {
736
- enableProdMode();
737
- }
738
- console.time('bootstrap');
739
- document.addEventListener('DOMContentLoaded', () => {
740
- new Promise(resolve => {
741
- resolve();
742
- }).then(() => platformBrowserDynamic().bootstrapModule(AppModule))
743
- .then((appModuleRef) => {
744
- const applicationRef = appModuleRef.injector.get(ApplicationRef);
745
- window.addEventListener('unload', () => {
746
- applicationRef.components.map(c => c && c.destroy());
747
- });
748
- console.timeEnd('bootstrap');
749
- }, err => console.log(err));
750
- });
751
- window.debugMode = function (on) {
752
- if (isEmpty(on)) {
753
- on = true;
754
- }
755
- const value = on ? 'true' : 'false';
756
- if (sessionStorage.getItem(DEBUG_MODE) !== value) {
757
- sessionStorage.setItem(DEBUG_MODE, value);
758
- window.location.reload();
759
- }
760
- };
761
- var main = () => { };
762
-
763
874
  /**
764
875
  * Generated bundle index. Do not edit.
765
876
  */