@wavemaker/app-ng-runtime 11.4.0-next.28152 → 11.4.0-rc.5339
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.
- app-ng-runtime/build-task/basic/tree/tree.build.d.ts +1 -2
- app-ng-runtime/build-task/bundles/index.umd.js +8 -10
- app-ng-runtime/build-task/bundles/index.umd.js.map +1 -1
- app-ng-runtime/build-task/esm2015/basic/tree/tree.build.js +3 -4
- app-ng-runtime/build-task/esm2015/data/form/form-field/form-field.build.js +2 -2
- app-ng-runtime/build-task/esm2015/navigation/popover/popover.build.js +3 -3
- app-ng-runtime/build-task/fesm2015/index.js +8 -10
- app-ng-runtime/build-task/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/base/bundles/index.umd.js +29 -4
- app-ng-runtime/components/base/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/base/esm2015/public_api.js +2 -2
- app-ng-runtime/components/base/esm2015/utils/widget-utils.js +22 -4
- app-ng-runtime/components/base/esm2015/widgets/common/base/base-field-validations.js +3 -2
- app-ng-runtime/components/base/esm2015/widgets/common/dialog/dialog.service.js +7 -1
- app-ng-runtime/components/base/fesm2015/index.js +30 -6
- app-ng-runtime/components/base/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/base/index.metadata.json +1 -1
- app-ng-runtime/components/base/public_api.d.ts +1 -1
- app-ng-runtime/components/base/utils/widget-utils.d.ts +8 -1
- app-ng-runtime/components/basic/tree/bundles/index.umd.js +280 -256
- app-ng-runtime/components/basic/tree/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/basic/tree/esm2015/public_api.js +2 -2
- app-ng-runtime/components/basic/tree/esm2015/tree.component.js +322 -0
- app-ng-runtime/components/basic/tree/esm2015/tree.module.js +3 -3
- app-ng-runtime/components/basic/tree/fesm2015/index.js +260 -248
- app-ng-runtime/components/basic/tree/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/basic/tree/index.metadata.json +1 -1
- app-ng-runtime/components/basic/tree/public_api.d.ts +1 -1
- app-ng-runtime/components/basic/tree/tree.component.d.ts +34 -0
- app-ng-runtime/components/containers/tabs/bundles/index.umd.js +39 -23
- app-ng-runtime/components/containers/tabs/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/containers/tabs/esm2015/tab-pane/tab-pane.component.js +8 -1
- app-ng-runtime/components/containers/tabs/esm2015/tabs.animator.js +33 -13
- app-ng-runtime/components/containers/tabs/fesm2015/index.js +40 -13
- app-ng-runtime/components/containers/tabs/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/containers/tabs/tabs.animator.d.ts +5 -1
- app-ng-runtime/components/data/form/bundles/index.umd.js +37 -13
- app-ng-runtime/components/data/form/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/form/esm2015/form-field/form-field.directive.js +26 -7
- app-ng-runtime/components/data/form/esm2015/form.component.js +10 -5
- app-ng-runtime/components/data/form/fesm2015/index.js +34 -10
- app-ng-runtime/components/data/form/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/form/index.metadata.json +1 -1
- app-ng-runtime/components/data/list/bundles/index.umd.js +52 -43
- app-ng-runtime/components/data/list/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/list/esm2015/list.component.js +52 -43
- app-ng-runtime/components/data/list/fesm2015/index.js +51 -42
- app-ng-runtime/components/data/list/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/list/index.metadata.json +1 -1
- app-ng-runtime/components/data/list/list.component.d.ts +1 -1
- app-ng-runtime/components/data/pagination/bundles/index.umd.js +22 -5
- app-ng-runtime/components/data/pagination/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/pagination/esm2015/pagination.component.js +23 -6
- app-ng-runtime/components/data/pagination/fesm2015/index.js +22 -5
- app-ng-runtime/components/data/pagination/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/pagination/index.metadata.json +1 -1
- app-ng-runtime/components/data/pagination/pagination.component.d.ts +1 -0
- app-ng-runtime/components/data/table/bundles/index.umd.js +64 -12
- app-ng-runtime/components/data/table/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/table/esm2015/table.component.js +63 -13
- app-ng-runtime/components/data/table/esm2015/table.props.js +3 -1
- app-ng-runtime/components/data/table/fesm2015/index.js +64 -12
- app-ng-runtime/components/data/table/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/table/index.metadata.json +1 -1
- app-ng-runtime/components/data/table/table.component.d.ts +9 -0
- app-ng-runtime/components/dialogs/default/base-dialog.d.ts +1 -0
- app-ng-runtime/components/dialogs/default/bundles/index.umd.js +17 -3
- app-ng-runtime/components/dialogs/default/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/dialogs/default/esm2015/base-dialog.js +18 -5
- app-ng-runtime/components/dialogs/default/fesm2015/index.js +17 -4
- app-ng-runtime/components/dialogs/default/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/dialogs/default/index.metadata.json +1 -1
- app-ng-runtime/components/input/epoch/base-date-time.component.d.ts +1 -0
- app-ng-runtime/components/input/epoch/bundles/index.umd.js +78 -35
- app-ng-runtime/components/input/epoch/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/input/epoch/date-time/date-time-picker.component.d.ts +1 -0
- app-ng-runtime/components/input/epoch/esm2015/base-date-time.component.js +55 -31
- app-ng-runtime/components/input/epoch/esm2015/date/date.component.js +3 -3
- app-ng-runtime/components/input/epoch/esm2015/date-time/date-time-picker.component.js +31 -11
- app-ng-runtime/components/input/epoch/esm2015/date-time/date-time.component.js +2 -2
- app-ng-runtime/components/input/epoch/fesm2015/index.js +87 -43
- app-ng-runtime/components/input/epoch/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/input/epoch/index.metadata.json +1 -1
- app-ng-runtime/components/navigation/menu/bundles/index.umd.js +25 -19
- app-ng-runtime/components/navigation/menu/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/navigation/menu/esm2015/menu-dropdown-item/menu-dropdown-item.component.js +15 -5
- app-ng-runtime/components/navigation/menu/esm2015/menu.component.js +14 -19
- app-ng-runtime/components/navigation/menu/fesm2015/index.js +25 -20
- app-ng-runtime/components/navigation/menu/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/navigation/menu/index.metadata.json +1 -1
- app-ng-runtime/components/navigation/menu/menu-dropdown-item/menu-dropdown-item.component.d.ts +7 -4
- app-ng-runtime/components/navigation/menu/menu.component.d.ts +3 -7
- app-ng-runtime/components/navigation/popover/bundles/index.umd.js +3 -1
- app-ng-runtime/components/navigation/popover/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/navigation/popover/esm2015/popover.component.js +5 -3
- app-ng-runtime/components/navigation/popover/fesm2015/index.js +4 -2
- app-ng-runtime/components/navigation/popover/fesm2015/index.js.map +1 -1
- app-ng-runtime/core/bundles/index.umd.js +7 -1
- app-ng-runtime/core/bundles/index.umd.js.map +1 -1
- app-ng-runtime/core/esm2015/services/pagination.service.js +8 -2
- app-ng-runtime/core/fesm2015/index.js +7 -1
- app-ng-runtime/core/fesm2015/index.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/bundles/index.umd.js +24 -6
- app-ng-runtime/mobile/components/page/default/bundles/index.umd.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/esm2015/page.directive.js +20 -3
- app-ng-runtime/mobile/components/page/default/fesm2015/index.js +19 -2
- app-ng-runtime/mobile/components/page/default/fesm2015/index.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/index.metadata.json +1 -1
- app-ng-runtime/mobile/components/page/default/page.directive.d.ts +4 -1
- app-ng-runtime/package.json +1 -1
- app-ng-runtime/scripts/datatable/datatable.js +86 -36
- app-ng-runtime/scripts/tree-keyboard-navigation/keyboard-navigation.js +251 -0
- app-ng-runtime/variables/bundles/index.umd.js +14 -4
- app-ng-runtime/variables/bundles/index.umd.js.map +1 -1
- app-ng-runtime/variables/esm2015/manager/action/notification-action.manager.js +5 -6
- app-ng-runtime/variables/esm2015/service/variables.service.js +8 -1
- app-ng-runtime/variables/fesm2015/index.js +11 -5
- app-ng-runtime/variables/fesm2015/index.js.map +1 -1
- app-ng-runtime/variables/index.metadata.json +1 -1
- app-ng-runtime/variables/service/variables.service.d.ts +4 -0
- app-ng-runtime/components/basic/tree/esm2015/tree.directive.js +0 -310
- app-ng-runtime/components/basic/tree/tree.directive.d.ts +0 -35
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.umd.js","sources":["../../../../../projects/components/widgets/dialogs/default/src/dialog-body/dialog-body.directive.ts","../../../../../node_modules/tslib/tslib.es6.js","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.props.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/base-dialog.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-header/dialog-header.component.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog.module.ts","../../../../../projects/components/widgets/dialogs/default/src/index.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, Inject, Renderer2 } from '@angular/core';\n\nimport { BsModalService } from 'ngx-bootstrap/modal';\n\nimport { addClass, setAttr, setCSS } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\n\ndeclare const $;\n\nconst DEFAULT_CLS = 'app-dialog-body modal-body';\n\n@Directive({\n selector: 'div[wmDialogBody]',\n})\nexport class DialogBodyDirective {\n @HostBinding('style.height') height;\n constructor(\n elRef: ElementRef,\n @Inject(DialogRef) private dialogRef,\n bsModal: BsModalService,\n private renderer: Renderer2\n ) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n\n const subscription = bsModal.onShown.subscribe(() => {\n const dialogRoot = $(elRef.nativeElement).closest('.app-dialog')[0];\n let dialogRootContainer = $('body.wm-app')[0];\n // To identify the microfrontend, if body tag doesn't have wm-app class then app loading as micro-frontend\n if(!dialogRootContainer) {\n const dialogBackrop = $('body > .modal-backdrop')[0];\n const parentContainer = $('body > modal-container')[0];\n dialogRootContainer = $('.wm-app')[0];\n if(dialogRootContainer && parentContainer ){\n if(dialogBackrop){\n this.renderer.appendChild(dialogRootContainer, dialogBackrop);\n }\n this.renderer.appendChild(dialogRootContainer, parentContainer);\n \n }\n }\n const width = this.dialogRef.width;\n const height = this.dialogRef.height;\n if(height){\n setTimeout(e=>{\n setCSS($(elRef.nativeElement)[0], 'height', height);\n });\n } \n if (dialogRoot) {\n if (width) {\n setCSS(dialogRoot, 'width', width);\n }\n setAttr(dialogRoot, 'tabindex', this.dialogRef.tabindex);\n setAttr(dialogRoot, 'name', this.dialogRef.name);\n\n }\n subscription.unsubscribe();\n });\n }\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-dialogfooter',\n new Map([\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ])\n );\n};\n","import { Directive, Injector } from '@angular/core';\n\nimport { BaseComponent, IWidgetConfig, provideAsWidgetRef } from '@wm/components/base';\nimport { registerProps } from './dialog-footer.props';\n\nconst WIDGET_INFO: IWidgetConfig = {\n widgetType: 'wm-dialogfooter',\n hostClass: 'app-dialog-footer modal-footer'\n};\n\n@Directive({\n selector: 'div[wmDialogFooter]',\n providers: [\n provideAsWidgetRef(DialogFooterDirective)\n ]\n})\nexport class DialogFooterDirective extends BaseComponent {\n static initializeProps = registerProps();\n\n constructor(inj: Injector) {\n super(inj, WIDGET_INFO);\n }\n}\n","import { Injector, OnDestroy, TemplateRef, Injectable } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { BsModalRef, BsModalService, ModalOptions } from 'ngx-bootstrap/modal';\n\nimport { Subscription } from 'rxjs';\n\nimport {AbstractDialogService, closePopover, findRootContainer, generateGUId} from '@wm/core';\n\nimport { BaseComponent, IDialog, IWidgetConfig } from '@wm/components/base';\nimport { createFocusTrap } from '@wavemaker/focus-trap/dist/focus-trap';\n\ndeclare const _;\n\nlet eventsRegistered = false;\n\nlet focusTrapObj = {\n activeElement: null\n};\n\nconst invokeOpenedCallback = (ref) => {\n if (ref) {\n setTimeout(() => {\n const root = findRootContainer(ref.$element);\n // if page styles have to be applied to dialog then dialog has to be child of page element.\n if (root) {\n $('body > modal-container > div').wrap('<' + root + '/>');\n }\n ref.invokeEventCallback('opened', {$event: {type: 'opened'}});\n // focusTrapObj will create focus trap for the respective dialog according to the titleId assigned to them which is unique.\n const container = $('[aria-labelledby= ' + ref.titleId + ']')[0];\n\n const keyboardFocusableElements = [container.querySelectorAll(\n 'a, button, input, textarea, select, details, iframe, embed, object, summary dialog, audio[controls], video[controls], [contenteditable], [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => {\n return (\n !el[0].hasAttribute('disabled') && !el[0].hasAttribute('hidden'))\n })[0];\n\n $(keyboardFocusableElements[0]).focus();\n\n focusTrapObj[ref.titleId] = createFocusTrap(container, {\n onActivate: () => container.classList.add('is-active'),\n onDeactivate: () => container.classList.remove('is-active'),\n allowOutsideClick: true,\n setReturnFocus: focusTrapObj.activeElement,\n });\n focusTrapObj[ref.titleId].activate();\n });\n }\n};\n\nconst invokeClosedCallback = (ref) => {\n if (ref) {\n ref.invokeEventCallback('close');\n ref.dialogRef = undefined;\n }\n};\n\n@Injectable()\nexport abstract class BaseDialog extends BaseComponent implements IDialog, OnDestroy {\n\n public name: string;\n\n private readonly dialogService: AbstractDialogService;\n private readonly bsModal: BsModalService;\n\n private dialogRef: BsModalRef;\n public titleId:string = 'wmdialog-' + generateGUId();\n\n protected constructor(\n inj: Injector,\n widgetConfig: IWidgetConfig,\n protected modalOptions: ModalOptions\n ) {\n super(inj, widgetConfig);\n this.dialogService = inj.get(AbstractDialogService);\n this.bsModal = inj.get(BsModalService);\n const router = inj.get(Router);\n\n const subscriptions: Subscription[] = [\n this.bsModal.onShown.subscribe(() => {\n const ref = this.dialogService.getLastOpenedDialog();\n if (ref === this) {\n // Always get the reference of last pushed dialog in the array for calling onOpen callback\n invokeOpenedCallback(ref);\n }\n }),\n this.bsModal.onShow.subscribe(() => {\n focusTrapObj.activeElement = document.activeElement;\n }),\n this.bsModal.onHidden.subscribe((closeReason) => {\n const ref = closeReason === 'esc' || closeReason === 'backdrop-click' ? this.dialogService.getLastOpenedDialog() : this.dialogService.getDialogRefFromClosedDialogs();\n if (ref === this) {\n // remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(ref);\n this.dialogService.removeFromClosedDialogs(ref);\n invokeClosedCallback(ref);\n if (ref.closeCallBackFn) {\n ref.closeCallBackFn();\n }\n }\n }),\n this.bsModal.onHide.subscribe(() => {\n // Will de-activate focus trap for the respective dialog when they are closed.\n const ref = this.dialogService.getDialogRefFromClosedDialogs();\n if (ref && focusTrapObj[ref.titleId] !== undefined) {\n focusTrapObj[ref.titleId].deactivate();\n }\n }),\n router.events.subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.close();\n }\n })\n ];\n this.registerDestroyListener(() => {// remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(this);\n this.dialogService.removeFromClosedDialogs(this);\n subscriptions.forEach(s => s.unsubscribe());\n });\n }\n\n /**\n * Opens the dialog\n * Subscribe to the onShown event emitter of bsModal and trigger on-opened event callback\n */\n public open(initState?: any) {\n\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n\n // do not open the dialog again if it is already opened\n const duplicateDialogCheck = (openedDialog) => {\n return openedDialog === this;\n };\n\n if (this.dialogService.getOpenedDialogs().some(duplicateDialogCheck)) {\n return;\n }\n\n this.dialogService.addToOpenedDialogs(this);\n\n // extend the context with the initState\n Object.assign(this.context, initState);\n this.modalOptions.ariaLabelledBy = this.titleId;\n this.dialogRef = this.bsModal.show(this.getTemplateRef(), this.modalOptions);\n }\n\n /**\n * closes the dialog\n * invokes the on-close event callback\n */\n public close() {\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n if (this.dialogRef) {\n this.dialogService.addToClosedDialogs(this);\n this.dialogRef.hide();\n }\n }\n\n /**\n * Register the dialog with the dialog service for programmatic access\n */\n protected register(scope) {\n // add scope along with name in the dialogRefsCollection Map while registering dialog\n // So that 2 dialogs having same name on different pages won't be overridden.\n this.dialogService.register(this.name, this, scope);\n }\n\n /**\n * De Register the dialog with the dialog service after dialog destruction\n */\n protected deRegister(scope) {\n this.dialogService.deRegister(this.name, scope);\n }\n\n /**\n * subclasses of BaseDialog must implement this method to return the proper template element ref\n * bsModal will use this refence to open the dialog\n * @returns {TemplateRef<any>}\n */\n protected abstract getTemplateRef(): TemplateRef<any>;\n\n protected onPropertyChange(key: string, nv: any, ov?: any) {\n // ignore the class attribute.\n // Prevent the framework from setting the class on the host element.\n if (key === 'class' || key === 'name' || key === 'tabindex') {\n return;\n } else if (key === 'animation') {\n this.modalOptions.class = this.modalOptions.class.replace(' animated ' + ov, '');\n if (nv) {\n this.modalOptions.class = this.modalOptions.class + ' animated ' + nv;\n }\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n public ngOnDestroy() {\n this.close();\n this.deRegister(this.viewParent);\n super.ngOnDestroy();\n }\n}\n","import { Component, ElementRef, Inject, Input } from '@angular/core';\n\nimport { addClass, toBoolean } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\nimport { BaseDialog } from '../base-dialog';\n\nconst DEFAULT_CLS = 'app-dialog-header modal-header';\nconst DEFAULT_ICON_DIMENSIONS = '21px';\n\n@Component({\n selector: 'div[wmDialogHeader]',\n templateUrl: './dialog-header.component.html'\n})\nexport class DialogHeaderComponent {\n\n @Input() public iconwidth = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconheight = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconmargin: string;\n @Input() public iconclass: string;\n @Input() public iconurl: string;\n @Input() public closable = true;\n @Input() public heading: string;\n @Input() public subheading: string;\n @Input() public titleid:string;\n\n public get isClosable() {\n return toBoolean(this.closable);\n }\n\n constructor(elRef: ElementRef, @Inject(DialogRef) private dialogRef: BaseDialog) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n }\n\n public closeDialog() {\n this.dialogRef.close();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ModalModule } from 'ngx-bootstrap/modal';\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { DialogBodyDirective } from './dialog-body/dialog-body.directive';\nimport { DialogFooterDirective } from './dialog-footer/dialog-footer.directive';\nimport { DialogHeaderComponent } from './dialog-header/dialog-header.component';\n\nconst components = [\n DialogBodyDirective,\n DialogFooterDirective,\n DialogHeaderComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n ModalModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components],\n entryComponents: []\n})\nexport class DialogModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {registerProps as ɵa} from './dialog-footer/dialog-footer.props';"],"names":["DEFAULT_CLS","addClass","setCSS","setAttr","Directive","ElementRef","Inject","DialogRef","BsModalService","Renderer2","HostBinding","register","PROP_STRING","PROP_BOOLEAN","BaseComponent","provideAsWidgetRef","Injector","findRootContainer","createFocusTrap","generateGUId","AbstractDialogService","router","Router","NavigationEnd","Injectable","ModalOptions","toBoolean","Component","Input","NgModule","CommonModule","ModalModule","WmComponentsModule"],"mappings":";;;;;;IAUA,IAAMA,aAAW,GAAG,4BAA4B,CAAC;;QAO7C,6BACI,KAAiB,EACU,SAAS,EACpC,OAAuB,EACd,QAAmB;YAJhC,iBAyCC;YAvC8B,cAAS,GAAT,SAAS,CAAA;YAE3B,aAAQ,GAAR,QAAQ,CAAW;YAE5BC,aAAQ,CAAC,KAAK,CAAC,aAAa,EAAED,aAAW,CAAC,CAAC;YAE3C,IAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC3C,IAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpE,IAAI,mBAAmB,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;;gBAE9C,IAAG,CAAC,mBAAmB,EAAE;oBACrB,IAAM,aAAa,GAAG,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrD,IAAM,eAAe,GAAG,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvD,mBAAmB,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtC,IAAG,mBAAmB,IAAK,eAAe,EAAE;wBACxC,IAAG,aAAa,EAAC;4BACb,KAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;yBACjE;wBACD,KAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;qBAEpE;iBACH;gBACD,IAAM,KAAK,GAAG,KAAI,CAAC,SAAS,CAAC,KAAK,CAAC;gBACnC,IAAM,MAAM,GAAG,KAAI,CAAC,SAAS,CAAC,MAAM,CAAC;gBACrC,IAAG,MAAM,EAAC;oBACP,UAAU,CAAC,UAAA,CAAC;wBACPE,WAAM,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;qBACvD,CAAC,CAAC;iBACN;gBACD,IAAI,UAAU,EAAE;oBACZ,IAAI,KAAK,EAAE;wBACPA,WAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;qBACtC;oBACDC,YAAO,CAAC,UAAU,EAAE,UAAU,EAAE,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBACzDA,YAAO,CAAC,UAAU,EAAE,MAAM,EAAE,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;iBAEpD;gBACD,YAAY,CAAC,WAAW,EAAE,CAAC;aAC9B,CAAC,CAAC;SACN;;;;gBA9CJC,gBAAS,SAAC;oBACP,QAAQ,EAAE,mBAAmB;iBAChC;;;gBAdmBC,iBAAU;gDAmBrBC,aAAM,SAACC,cAAS;gBAjBhBC,oBAAc;gBAF8BC,gBAAS;;;yBAgBzDC,kBAAW,SAAC,cAAc;;;IChB/B;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI;QACxC,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;oBACpB,IAAI,CAAC,EAAE;wBAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;QC5Oa,aAAa,GAAG;QACzBC,aAAQ,CACJ,iBAAiB,EACjB,IAAI,GAAG,CAAC;YACJ,CAAC,OAAO,EAAEC,gBAAW,CAAC;YACtB,CAAC,MAAM,EAAEA,gBAAW,CAAC;YACrB,CAAC,MAAM,kBAAG,KAAK,EAAE,IAAI,IAAKC,iBAAY,EAAE;SAC3C,CAAC,CACL,CAAC;IACN;;ICNA,IAAM,WAAW,GAAkB;QAC/B,UAAU,EAAE,iBAAiB;QAC7B,SAAS,EAAE,gCAAgC;KAC9C,CAAC;;QAQyC,yCAAa;QAGpD,+BAAY,GAAa;mBACrB,kBAAM,GAAG,EAAE,WAAW,CAAC;SAC1B;;KALL,CAA2CC,kBAAa;IAC7C,qCAAe,GAAG,aAAa,EAAE,CAAC;;gBAP5CV,gBAAS,SAAC;oBACP,QAAQ,EAAE,qBAAqB;oBAC/B,SAAS,EAAE;wBACPW,uBAAkB,CAAC,qBAAqB,CAAC;qBAC5C;iBACJ;;;gBAfmBC,eAAQ;;;ICa5B,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,IAAI,YAAY,GAAG;QACf,aAAa,EAAE,IAAI;KACtB,CAAC;IAEF,IAAM,oBAAoB,GAAG,UAAC,GAAG;QAC7B,IAAI,GAAG,EAAE;YACL,UAAU,CAAC;gBACP,IAAM,IAAI,GAAGC,sBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;;gBAE7C,IAAI,IAAI,EAAE;oBACN,CAAC,CAAC,8BAA8B,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;iBAC7D;gBACD,GAAG,CAAC,mBAAmB,CAAC,QAAQ,EAAE,EAAC,MAAM,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAC,CAAC,CAAC;;gBAE9D,IAAM,SAAS,GAAG,CAAC,CAAC,oBAAoB,GAAG,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEjE,IAAM,yBAAyB,GAAG,CAAC,SAAS,CAAC,gBAAgB,CACzD,0KAA0K,CAC3K,CAAC,CAAC,MAAM,CAAC,UAAA,EAAE;oBACV,QACE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAC;iBACpE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAER,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;gBAExC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,GAAGC,yBAAe,CAAC,SAAS,EAAE;oBACnD,UAAU,EAAE,cAAM,OAAA,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,GAAA;oBACtD,YAAY,EAAE,cAAM,OAAA,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,GAAA;oBAC3D,iBAAiB,EAAE,IAAI;oBACvB,cAAc,EAAE,YAAY,CAAC,aAAa;iBAC7C,CAAC,CAAC;gBACH,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;aACxC,CAAC,CAAC;SACN;IACL,CAAC,CAAC;;IAEF,IAAM,oBAAoB,GAAG,UAAC,GAAG;QAC7B,IAAI,GAAG,EAAE;YACL,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YACjC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;SAC7B;IACL,CAAC,CAAC;;;QAGuC,8BAAa;QAUlD,oBACI,GAAa,EACb,YAA2B,EACjB,YAA0B;YAHxC,YAKI,kBAAM,GAAG,EAAE,YAAY,CAAC,SA8C3B;YAhDa,kBAAY,GAAZ,YAAY,CAAc;YALjC,aAAO,GAAU,WAAW,GAAGC,iBAAY,EAAE,CAAC;YAQjD,KAAI,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,CAACC,0BAAqB,CAAC,CAAC;YACpD,KAAI,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAACZ,oBAAc,CAAC,CAAC;YACvC,IAAMa,QAAM,GAAG,GAAG,CAAC,GAAG,CAACC,aAAM,CAAC,CAAC;YAE/B,IAAM,aAAa,GAAmB;gBAClC,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;oBAC3B,IAAM,GAAG,GAAG,KAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,CAAC;oBACrD,IAAI,GAAG,KAAK,KAAI,EAAE;;wBAEd,oBAAoB,CAAC,GAAG,CAAC,CAAC;qBAC7B;iBACJ,CAAC;gBACF,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;oBAC1B,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;iBACvD,CAAC;gBACF,KAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAC,WAAW;oBACxC,IAAM,GAAG,GAAG,WAAW,KAAK,KAAK,IAAI,WAAW,KAAK,gBAAgB,GAAG,KAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,GAAG,KAAI,CAAC,aAAa,CAAC,6BAA6B,EAAE,CAAC;oBACtK,IAAI,GAAG,KAAK,KAAI,EAAE;;wBAEd,KAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;wBAChD,KAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;wBAChD,oBAAoB,CAAC,GAAG,CAAC,CAAC;wBAC1B,IAAI,GAAG,CAAC,eAAe,EAAE;4BACrB,GAAG,CAAC,eAAe,EAAE,CAAC;yBACzB;qBACJ;iBACJ,CAAC;gBACF,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;;oBAE1B,IAAM,GAAG,GAAG,KAAI,CAAC,aAAa,CAAC,6BAA6B,EAAE,CAAC;oBAC/D,IAAI,GAAG,IAAI,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;wBAChD,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC;qBAC1C;iBACJ,CAAC;gBACFD,QAAM,CAAC,MAAM,CAAC,SAAS,CAAC,UAAA,CAAC;oBACrB,IAAI,CAAC,YAAYE,oBAAa,EAAE;wBAC5B,KAAI,CAAC,KAAK,EAAE,CAAC;qBAChB;iBACJ,CAAC;aACL,CAAC;YACF,KAAI,CAAC,uBAAuB,CAAC;gBACzB,KAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,KAAI,CAAC,CAAC;gBACjD,KAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,KAAI,CAAC,CAAC;gBACjD,aAAa,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,WAAW,EAAE,GAAA,CAAC,CAAC;aAC/C,CAAC,CAAC;;SACN;;;;;QAMM,yBAAI,GAAJ,UAAK,SAAe;YAApB,iBAoBN;;;;YAdG,IAAM,oBAAoB,GAAG,UAAC,YAAY;gBACvC,OAAO,YAAY,KAAK,KAAI,CAAC;aAC/B,CAAC;YAEF,IAAI,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE;gBAClE,OAAO;aACV;YAED,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;;YAG5C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YACvC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC;YAChD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;SAChF;;;;;QAMM,0BAAK,GAAL;;;YAGH,IAAI,IAAI,CAAC,SAAS,EAAE;gBAChB,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC5C,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;aACzB;SACJ;;;;QAKS,6BAAQ,GAAR,UAAS,KAAK;;;YAGpB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;SACvD;;;;QAKS,+BAAU,GAAV,UAAW,KAAK;YACtB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SACnD;QASS,qCAAgB,GAAhB,UAAiB,GAAW,EAAE,EAAO,EAAE,EAAQ;;;YAGrD,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,UAAU,EAAE;gBACzD,OAAO;aACV;iBAAM,IAAI,GAAG,KAAK,WAAW,EAAE;gBAC5B,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;gBACjF,IAAI,EAAE,EAAE;oBACJ,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,YAAY,GAAG,EAAE,CAAC;iBACzE;aACJ;YACD,iBAAM,gBAAgB,YAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;SACvC;QAEM,gCAAW,GAAX;YACH,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACjC,iBAAM,WAAW,WAAE,CAAC;SACvB;;KA/IL,CAAyCT,kBAAa;;gBADrDU,iBAAU;;;gBA1DFR,eAAQ;;gBAEoBS,kBAAY;;;ICKjD,IAAM,WAAW,GAAG,gCAAgC,CAAC;IACrD,IAAM,uBAAuB,GAAG,MAAM,CAAC;;QAsBnC,+BAAY,KAAiB,EAA6B,SAAqB;YAArB,cAAS,GAAT,SAAS,CAAY;YAd/D,cAAS,GAAG,uBAAuB,CAAC;YACpC,eAAU,GAAG,uBAAuB,CAAC;YAIrC,aAAQ,GAAG,IAAI,CAAC;YAU5BxB,aAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SAC9C;QAND,sBAAW,6CAAU;iBAArB;gBACI,OAAOyB,cAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACnC;;;WAAA;QAMM,2CAAW,GAAX;YACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;SAC1B;;;;gBA1BJC,gBAAS,SAAC;oBACP,QAAQ,EAAE,qBAAqB;oBAC/B,+uBAA6C;iBAChD;;;gBAbmBtB,iBAAU;gBAKrB,UAAU,uBAyBiBC,aAAM,SAACC,cAAS;;;4BAd/CqB,YAAK;6BACLA,YAAK;6BACLA,YAAK;4BACLA,YAAK;0BACLA,YAAK;2BACLA,YAAK;0BACLA,YAAK;6BACLA,YAAK;0BACLA,YAAK;;;ICdV,IAAM,UAAU,GAAG;QACf,mBAAmB;QACnB,qBAAqB;QACrB,qBAAqB;KACxB,CAAC;;QAYF;;;;;gBAVCC,eAAQ,SAAC;oBACN,OAAO,EAAE;wBACLC,mBAAY;wBACZC,iBAAW;wBACXC,uBAAkB;qBACrB;oBACD,YAAY,2BAAM,UAAU,EAAC;oBAC7B,OAAO,2BAAM,UAAU,EAAC;oBACxB,eAAe,EAAE,EAAE;iBACtB;;;ICzBD;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"index.umd.js","sources":["../../../../../projects/components/widgets/dialogs/default/src/dialog-body/dialog-body.directive.ts","../../../../../node_modules/tslib/tslib.es6.js","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.props.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/base-dialog.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-header/dialog-header.component.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog.module.ts","../../../../../projects/components/widgets/dialogs/default/src/index.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, Inject, Renderer2 } from '@angular/core';\n\nimport { BsModalService } from 'ngx-bootstrap/modal';\n\nimport { addClass, setAttr, setCSS } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\n\ndeclare const $;\n\nconst DEFAULT_CLS = 'app-dialog-body modal-body';\n\n@Directive({\n selector: 'div[wmDialogBody]',\n})\nexport class DialogBodyDirective {\n @HostBinding('style.height') height;\n constructor(\n elRef: ElementRef,\n @Inject(DialogRef) private dialogRef,\n bsModal: BsModalService,\n private renderer: Renderer2\n ) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n\n const subscription = bsModal.onShown.subscribe(() => {\n const dialogRoot = $(elRef.nativeElement).closest('.app-dialog')[0];\n let dialogRootContainer = $('body.wm-app')[0];\n // To identify the microfrontend, if body tag doesn't have wm-app class then app loading as micro-frontend\n if(!dialogRootContainer) {\n const dialogBackrop = $('body > .modal-backdrop')[0];\n const parentContainer = $('body > modal-container')[0];\n dialogRootContainer = $('.wm-app')[0];\n if(dialogRootContainer && parentContainer ){\n if(dialogBackrop){\n this.renderer.appendChild(dialogRootContainer, dialogBackrop);\n }\n this.renderer.appendChild(dialogRootContainer, parentContainer);\n \n }\n }\n const width = this.dialogRef.width;\n const height = this.dialogRef.height;\n if(height){\n setTimeout(e=>{\n setCSS($(elRef.nativeElement)[0], 'height', height);\n });\n } \n if (dialogRoot) {\n if (width) {\n setCSS(dialogRoot, 'width', width);\n }\n setAttr(dialogRoot, 'tabindex', this.dialogRef.tabindex);\n setAttr(dialogRoot, 'name', this.dialogRef.name);\n\n }\n subscription.unsubscribe();\n });\n }\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-dialogfooter',\n new Map([\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ])\n );\n};\n","import { Directive, Injector } from '@angular/core';\n\nimport { BaseComponent, IWidgetConfig, provideAsWidgetRef } from '@wm/components/base';\nimport { registerProps } from './dialog-footer.props';\n\nconst WIDGET_INFO: IWidgetConfig = {\n widgetType: 'wm-dialogfooter',\n hostClass: 'app-dialog-footer modal-footer'\n};\n\n@Directive({\n selector: 'div[wmDialogFooter]',\n providers: [\n provideAsWidgetRef(DialogFooterDirective)\n ]\n})\nexport class DialogFooterDirective extends BaseComponent {\n static initializeProps = registerProps();\n\n constructor(inj: Injector) {\n super(inj, WIDGET_INFO);\n }\n}\n","import { Injector, OnDestroy, TemplateRef, Injectable } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { BsModalRef, BsModalService, ModalOptions } from 'ngx-bootstrap/modal';\n\nimport { Subscription } from 'rxjs';\n\nimport {AbstractDialogService, closePopover, findRootContainer, generateGUId, isMobile, isMobileApp} from '@wm/core';\n\nimport { BaseComponent, IDialog, IWidgetConfig } from '@wm/components/base';\nimport { createFocusTrap } from '@wavemaker/focus-trap/dist/focus-trap';\ndeclare const _;\n\nlet eventsRegistered = false;\n\nlet focusTrapObj = {\n activeElement: null\n};\n\nconst invokeOpenedCallback = (ref) => {\n if (ref) {\n setTimeout(() => {\n const root = findRootContainer(ref.$element);\n // if page styles have to be applied to dialog then dialog has to be child of page element.\n if (root) {\n $('body > modal-container > div').wrap('<' + root + '/>');\n }\n ref.invokeEventCallback('opened', {$event: {type: 'opened'}});\n // focusTrapObj will create focus trap for the respective dialog according to the titleId assigned to them which is unique.\n const container = $('[aria-labelledby= ' + ref.titleId + ']')[0];\n\n const keyboardFocusableElements = [container.querySelectorAll(\n 'a, button, input, textarea, select, details, iframe, embed, object, summary dialog, audio[controls], video[controls], [contenteditable], [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => {\n return (\n !el[0].hasAttribute('disabled') && !el[0].hasAttribute('hidden'))\n })[0];\n\n $(keyboardFocusableElements[0]).focus();\n\n focusTrapObj[ref.titleId] = createFocusTrap(container, {\n onActivate: () => container.classList.add('is-active'),\n onDeactivate: () => container.classList.remove('is-active'),\n allowOutsideClick: true,\n setReturnFocus: focusTrapObj.activeElement,\n });\n focusTrapObj[ref.titleId].activate();\n });\n }\n};\n\nconst invokeClosedCallback = (ref) => {\n if (ref) {\n ref.invokeEventCallback('close');\n ref.dialogRef = undefined;\n }\n};\n\n@Injectable()\nexport abstract class BaseDialog extends BaseComponent implements IDialog, OnDestroy {\n\n public name: string;\n\n private readonly dialogService: AbstractDialogService;\n private readonly bsModal: BsModalService;\n\n private dialogRef: BsModalRef;\n private dialogId: number;\n public titleId:string = 'wmdialog-' + generateGUId();\n\n protected constructor(\n inj: Injector,\n widgetConfig: IWidgetConfig,\n protected modalOptions: ModalOptions\n ) {\n super(inj, widgetConfig);\n this.dialogService = inj.get(AbstractDialogService);\n this.bsModal = inj.get(BsModalService);\n const router = inj.get(Router);\n\n const subscriptions: Subscription[] = [\n this.bsModal.onShown.subscribe(({id}) => {\n const ref = this.dialogService.getLastOpenedDialog();\n if (ref === this && !this.dialogId) {\n // Always get the reference of last pushed dialog in the array for calling onOpen callback\n invokeOpenedCallback(ref);\n this.dialogId = id;\n }\n }),\n this.bsModal.onShow.subscribe(() => {\n focusTrapObj.activeElement = document.activeElement;\n }),\n this.bsModal.onHidden.subscribe((closeReason) => {\n let ref = this.dialogService.getDialogRefFromClosedDialogs();\n if (this.dialogId && closeReason?.id === this.dialogId) {\n ref = this;\n } else if (closeReason === 'esc' || closeReason === 'backdrop-click') {\n ref = this.dialogService.getLastOpenedDialog();\n }\n if (ref === this) {\n this.dialogId = null;\n // remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(ref);\n this.dialogService.removeFromClosedDialogs(ref);\n invokeClosedCallback(ref);\n if (ref.closeCallBackFn) {\n ref.closeCallBackFn();\n }\n }\n }),\n this.bsModal.onHide.subscribe(() => {\n // Will de-activate focus trap for the respective dialog when they are closed.\n const ref = this.dialogService.getDialogRefFromClosedDialogs();\n if (ref && focusTrapObj[ref.titleId] !== undefined) {\n focusTrapObj[ref.titleId].deactivate();\n }\n }),\n router.events.subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.close();\n }\n })\n ];\n this.registerDestroyListener(() => {// remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(this);\n this.dialogService.removeFromClosedDialogs(this);\n subscriptions.forEach(s => s.unsubscribe());\n });\n }\n\n /**\n * Opens the dialog\n * Subscribe to the onShown event emitter of bsModal and trigger on-opened event callback\n */\n public open(initState?: any) {\n\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n\n // do not open the dialog again if it is already opened\n const duplicateDialogCheck = (openedDialog) => {\n return openedDialog === this;\n };\n\n if (this.dialogService.getOpenedDialogs().some(duplicateDialogCheck)) {\n return;\n }\n\n this.dialogService.addToOpenedDialogs(this);\n\n // extend the context with the initState\n Object.assign(this.context, initState);\n this.modalOptions.ariaLabelledBy = this.titleId;\n this.dialogRef = this.bsModal.show(this.getTemplateRef(), this.modalOptions);\n // Fix for [WMS-23948]: Focus moving out of active Dialog widget\n if (this.dialogService.getOpenedDialogs().length === 1 && (isMobile() || isMobileApp())) {\n const parentSelector = $('body > app-root')[0];\n parentSelector.setAttribute('aria-hidden', 'true');\n }\n }\n\n /**\n * closes the dialog\n * invokes the on-close event callback\n */\n public close() {\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n if (this.dialogRef) {\n this.dialogService.addToClosedDialogs(this);\n this.dialogRef.hide();\n }\n }\n\n /**\n * Register the dialog with the dialog service for programmatic access\n */\n protected register(scope) {\n // add scope along with name in the dialogRefsCollection Map while registering dialog\n // So that 2 dialogs having same name on different pages won't be overridden.\n this.dialogService.register(this.name, this, scope);\n }\n\n /**\n * De Register the dialog with the dialog service after dialog destruction\n */\n protected deRegister(scope) {\n this.dialogService.deRegister(this.name, scope);\n }\n\n /**\n * subclasses of BaseDialog must implement this method to return the proper template element ref\n * bsModal will use this refence to open the dialog\n * @returns {TemplateRef<any>}\n */\n protected abstract getTemplateRef(): TemplateRef<any>;\n\n protected onPropertyChange(key: string, nv: any, ov?: any) {\n // ignore the class attribute.\n // Prevent the framework from setting the class on the host element.\n if (key === 'class' || key === 'name' || key === 'tabindex') {\n return;\n } else if (key === 'animation') {\n this.modalOptions.class = this.modalOptions.class.replace(' animated ' + ov, '');\n if (nv) {\n this.modalOptions.class = this.modalOptions.class + ' animated ' + nv;\n }\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n public ngOnDestroy() {\n this.close();\n this.deRegister(this.viewParent);\n super.ngOnDestroy();\n }\n}\n","import { Component, ElementRef, Inject, Input } from '@angular/core';\n\nimport { addClass, toBoolean } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\nimport { BaseDialog } from '../base-dialog';\n\nconst DEFAULT_CLS = 'app-dialog-header modal-header';\nconst DEFAULT_ICON_DIMENSIONS = '21px';\n\n@Component({\n selector: 'div[wmDialogHeader]',\n templateUrl: './dialog-header.component.html'\n})\nexport class DialogHeaderComponent {\n\n @Input() public iconwidth = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconheight = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconmargin: string;\n @Input() public iconclass: string;\n @Input() public iconurl: string;\n @Input() public closable = true;\n @Input() public heading: string;\n @Input() public subheading: string;\n @Input() public titleid:string;\n\n public get isClosable() {\n return toBoolean(this.closable);\n }\n\n constructor(elRef: ElementRef, @Inject(DialogRef) private dialogRef: BaseDialog) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n }\n\n public closeDialog() {\n this.dialogRef.close();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ModalModule } from 'ngx-bootstrap/modal';\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { DialogBodyDirective } from './dialog-body/dialog-body.directive';\nimport { DialogFooterDirective } from './dialog-footer/dialog-footer.directive';\nimport { DialogHeaderComponent } from './dialog-header/dialog-header.component';\n\nconst components = [\n DialogBodyDirective,\n DialogFooterDirective,\n DialogHeaderComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n ModalModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components],\n entryComponents: []\n})\nexport class DialogModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {registerProps as ɵa} from './dialog-footer/dialog-footer.props';"],"names":["DEFAULT_CLS","addClass","setCSS","setAttr","Directive","ElementRef","Inject","DialogRef","BsModalService","Renderer2","HostBinding","register","PROP_STRING","PROP_BOOLEAN","BaseComponent","provideAsWidgetRef","Injector","findRootContainer","createFocusTrap","generateGUId","AbstractDialogService","router","Router","NavigationEnd","isMobile","isMobileApp","Injectable","ModalOptions","toBoolean","Component","Input","NgModule","CommonModule","ModalModule","WmComponentsModule"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Injector, Injectable } from '@angular/core';
|
|
2
2
|
import { NavigationEnd, Router } from '@angular/router';
|
|
3
3
|
import { BsModalService, ModalOptions } from 'ngx-bootstrap/modal';
|
|
4
|
-
import { AbstractDialogService, findRootContainer, generateGUId } from '@wm/core';
|
|
4
|
+
import { AbstractDialogService, findRootContainer, generateGUId, isMobile, isMobileApp } from '@wm/core';
|
|
5
5
|
import { BaseComponent } from '@wm/components/base';
|
|
6
6
|
import { createFocusTrap } from '@wavemaker/focus-trap/dist/focus-trap';
|
|
7
7
|
let eventsRegistered = false;
|
|
@@ -50,19 +50,27 @@ export class BaseDialog extends BaseComponent {
|
|
|
50
50
|
this.bsModal = inj.get(BsModalService);
|
|
51
51
|
const router = inj.get(Router);
|
|
52
52
|
const subscriptions = [
|
|
53
|
-
this.bsModal.onShown.subscribe(() => {
|
|
53
|
+
this.bsModal.onShown.subscribe(({ id }) => {
|
|
54
54
|
const ref = this.dialogService.getLastOpenedDialog();
|
|
55
|
-
if (ref === this) {
|
|
55
|
+
if (ref === this && !this.dialogId) {
|
|
56
56
|
// Always get the reference of last pushed dialog in the array for calling onOpen callback
|
|
57
57
|
invokeOpenedCallback(ref);
|
|
58
|
+
this.dialogId = id;
|
|
58
59
|
}
|
|
59
60
|
}),
|
|
60
61
|
this.bsModal.onShow.subscribe(() => {
|
|
61
62
|
focusTrapObj.activeElement = document.activeElement;
|
|
62
63
|
}),
|
|
63
64
|
this.bsModal.onHidden.subscribe((closeReason) => {
|
|
64
|
-
|
|
65
|
+
let ref = this.dialogService.getDialogRefFromClosedDialogs();
|
|
66
|
+
if (this.dialogId && (closeReason === null || closeReason === void 0 ? void 0 : closeReason.id) === this.dialogId) {
|
|
67
|
+
ref = this;
|
|
68
|
+
}
|
|
69
|
+
else if (closeReason === 'esc' || closeReason === 'backdrop-click') {
|
|
70
|
+
ref = this.dialogService.getLastOpenedDialog();
|
|
71
|
+
}
|
|
65
72
|
if (ref === this) {
|
|
73
|
+
this.dialogId = null;
|
|
66
74
|
// remove the dialog reference from opened dialogs and closed dialogs
|
|
67
75
|
this.dialogService.removeFromOpenedDialogs(ref);
|
|
68
76
|
this.dialogService.removeFromClosedDialogs(ref);
|
|
@@ -110,6 +118,11 @@ export class BaseDialog extends BaseComponent {
|
|
|
110
118
|
Object.assign(this.context, initState);
|
|
111
119
|
this.modalOptions.ariaLabelledBy = this.titleId;
|
|
112
120
|
this.dialogRef = this.bsModal.show(this.getTemplateRef(), this.modalOptions);
|
|
121
|
+
// Fix for [WMS-23948]: Focus moving out of active Dialog widget
|
|
122
|
+
if (this.dialogService.getOpenedDialogs().length === 1 && (isMobile() || isMobileApp())) {
|
|
123
|
+
const parentSelector = $('body > app-root')[0];
|
|
124
|
+
parentSelector.setAttribute('aria-hidden', 'true');
|
|
125
|
+
}
|
|
113
126
|
}
|
|
114
127
|
/**
|
|
115
128
|
* closes the dialog
|
|
@@ -166,4 +179,4 @@ BaseDialog.ctorParameters = () => [
|
|
|
166
179
|
{ type: ModalOptions }
|
|
167
180
|
];
|
|
168
181
|
export { ɵ0, ɵ1 };
|
|
169
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kaWFsb2cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvZGlhbG9ncy9kZWZhdWx0L3NyYy9iYXNlLWRpYWxvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUEwQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQWMsY0FBYyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSS9FLE9BQU8sRUFBQyxxQkFBcUIsRUFBZ0IsaUJBQWlCLEVBQUUsWUFBWSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBRTlGLE9BQU8sRUFBRSxhQUFhLEVBQTBCLE1BQU0scUJBQXFCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBSXhFLElBQUksZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO0FBRTdCLElBQUksWUFBWSxHQUFHO0lBQ2YsYUFBYSxFQUFFLElBQUk7Q0FDdEIsQ0FBQztBQUVGLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxHQUFHLEVBQUUsRUFBRTtJQUNqQyxJQUFJLEdBQUcsRUFBRTtRQUNMLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixNQUFNLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDN0MsMkZBQTJGO1lBQzNGLElBQUksSUFBSSxFQUFFO2dCQUNOLENBQUMsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDO2FBQzdEO1lBQ0QsR0FBRyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxFQUFDLE1BQU0sRUFBRSxFQUFDLElBQUksRUFBRSxRQUFRLEVB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SixVQUFVOzs7WUExREYsUUFBUTs7WUFFb0IsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yLCBPbkRlc3Ryb3ksIFRlbXBsYXRlUmVmLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQnNNb2RhbFJlZiwgQnNNb2RhbFNlcnZpY2UsIE1vZGFsT3B0aW9ucyB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtBYnN0cmFjdERpYWxvZ1NlcnZpY2UsIGNsb3NlUG9wb3ZlciwgZmluZFJvb3RDb250YWluZXIsIGdlbmVyYXRlR1VJZH0gZnJvbSAnQHdtL2NvcmUnO1xuXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50LCBJRGlhbG9nLCBJV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQgeyBjcmVhdGVGb2N1c1RyYXAgfSBmcm9tICdAd2F2ZW1ha2VyL2ZvY3VzLXRyYXAvZGlzdC9mb2N1cy10cmFwJztcblxuZGVjbGFyZSBjb25zdCBfO1xuXG5sZXQgZXZlbnRzUmVnaXN0ZXJlZCA9IGZhbHNlO1xuXG5sZXQgZm9jdXNUcmFwT2JqID0ge1xuICAgIGFjdGl2ZUVsZW1lbnQ6IG51bGxcbn07XG5cbmNvbnN0IGludm9rZU9wZW5lZENhbGxiYWNrID0gKHJlZikgPT4ge1xuICAgIGlmIChyZWYpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByb290ID0gZmluZFJvb3RDb250YWluZXIocmVmLiRlbGVtZW50KTtcbiAgICAgICAgICAgIC8vIGlmIHBhZ2Ugc3R5bGVzIGhhdmUgdG8gYmUgYXBwbGllZCB0byBkaWFsb2cgdGhlbiBkaWFsb2cgaGFzIHRvIGJlIGNoaWxkIG9mIHBhZ2UgZWxlbWVudC5cbiAgICAgICAgICAgIGlmIChyb290KSB7XG4gICAgICAgICAgICAgICAgJCgnYm9keSA+IG1vZGFsLWNvbnRhaW5lciA+IGRpdicpLndyYXAoJzwnICsgcm9vdCArICcvPicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVmLmludm9rZUV2ZW50Q2FsbGJhY2soJ29wZW5lZCcsIHskZXZlbnQ6IHt0eXBlOiAnb3BlbmVkJ319KTtcbiAgICAgICAgICAgIC8vIGZvY3VzVHJhcE9iaiB3aWxsIGNyZWF0ZSBmb2N1cyB0cmFwIGZvciB0aGUgcmVzcGVjdGl2ZSBkaWFsb2cgYWNjb3JkaW5nIHRvIHRoZSB0aXRsZUlkIGFzc2lnbmVkIHRvIHRoZW0gd2hpY2ggaXMgdW5pcXVlLlxuICAgICAgICAgICAgY29uc3QgY29udGFpbmVyID0gJCgnW2FyaWEtbGFiZWxsZWRieT0gJyArIHJlZi50aXRsZUlkICsgJ10nKVswXTtcblxuICAgICAgICAgICAgY29uc3Qga2V5Ym9hcmRGb2N1c2FibGVFbGVtZW50cyA9IFtjb250YWluZXIucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgICAgICAgICAnYSwgYnV0dG9uLCBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCwgZGV0YWlscywgaWZyYW1lLCBlbWJlZCwgb2JqZWN0LCBzdW1tYXJ5IGRpYWxvZywgYXVkaW9bY29udHJvbHNdLCB2aWRlb1tjb250cm9sc10sIFtjb250ZW50ZWRpdGFibGVdLCBbdGFiaW5kZXhdOm5vdChbdGFiaW5kZXg9XCItMVwiXSknXG4gICAgICAgICAgICAgICldLmZpbHRlcihlbCA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICFlbFswXS5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgJiYgIWVsWzBdLmhhc0F0dHJpYnV0ZSgnaGlkZGVuJykpXG4gICAgICAgICAgICAgIH0pWzBdO1xuXG4gICAgICAgICAgICAkKGtleWJvYXJkRm9jdXNhYmxlRWxlbWVudHNbMF0pLmZvY3VzKCk7XG5cbiAgICAgICAgICAgIGZvY3VzVHJhcE9ialtyZWYudGl0bGVJZF0gPSBjcmVhdGVGb2N1c1RyYXAoY29udGFpbmVyLCB7XG4gICAgICAgICAgICAgICAgb25BY3RpdmF0ZTogKCkgPT4gY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoJ2lzLWFjdGl2ZScpLFxuICAgICAgICAgICAgICAgIG9uRGVhY3RpdmF0ZTogKCkgPT4gY29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoJ2lzLWFjdGl2ZScpLFxuICAgICAgICAgICAgICAgIGFsbG93T3V0c2lkZUNsaWNrOiB0cnVlLFxuICAgICAgICAgICAgICAgIHNldFJldHVybkZvY3VzOiBmb2N1c1RyYXBPYmouYWN0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZm9jdXNUcmFwT2JqW3JlZi50aXRsZUlkXS5hY3RpdmF0ZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG59O1xuXG5jb25zdCBpbnZva2VDbG9zZWRDYWxsYmFjayA9IChyZWYpID0+IHtcbiAgICBpZiAocmVmKSB7XG4gICAgICAgIHJlZi5pbnZva2VFdmVudENhbGxiYWNrKCdjbG9zZScpO1xuICAgICAgICByZWYuZGlhbG9nUmVmID0gdW5kZWZpbmVkO1xuICAgIH1cbn07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRGlhbG9nIGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIElEaWFsb2csIE9uRGVzdHJveSB7XG5cbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2dTZXJ2aWNlOiBBYnN0cmFjdERpYWxvZ1NlcnZpY2U7XG4gICAgcHJpdmF0ZSByZWFkb25seSBic01vZGFsOiBCc01vZGFsU2VydmljZTtcblxuICAgIHByaXZhdGUgZGlhbG9nUmVmOiBCc01vZGFsUmVmO1xuICAgIHB1YmxpYyB0aXRsZUlkOnN0cmluZyA9ICd3bWRpYWxvZy0nICsgZ2VuZXJhdGVHVUlkKCk7XG5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgICAgIGluajogSW5qZWN0b3IsXG4gICAgICAgIHdpZGdldENvbmZpZzogSVdpZGdldENvbmZpZyxcbiAgICAgICAgcHJvdGVjdGVkIG1vZGFsT3B0aW9uczogTW9kYWxPcHRpb25zXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluaiwgd2lkZ2V0Q29uZmlnKTtcbiAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlID0gaW5qLmdldChBYnN0cmFjdERpYWxvZ1NlcnZpY2UpO1xuICAgICAgICB0aGlzLmJzTW9kYWwgPSBpbmouZ2V0KEJzTW9kYWxTZXJ2aWNlKTtcbiAgICAgICAgY29uc3Qgcm91dGVyID0gaW5qLmdldChSb3V0ZXIpO1xuXG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW1xuICAgICAgICAgICAgdGhpcy5ic01vZGFsLm9uU2hvd24uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2UuZ2V0TGFzdE9wZW5lZERpYWxvZygpO1xuICAgICAgICAgICAgICAgIGlmIChyZWYgPT09IHRoaXMpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQWx3YXlzIGdldCB0aGUgcmVmZXJlbmNlIG9mIGxhc3QgcHVzaGVkIGRpYWxvZyBpbiB0aGUgYXJyYXkgZm9yIGNhbGxpbmcgb25PcGVuIGNhbGxiYWNrXG4gICAgICAgICAgICAgICAgICAgIGludm9rZU9wZW5lZENhbGxiYWNrKHJlZik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0aGlzLmJzTW9kYWwub25TaG93LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgZm9jdXNUcmFwT2JqLmFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0aGlzLmJzTW9kYWwub25IaWRkZW4uc3Vic2NyaWJlKChjbG9zZVJlYXNvbikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlZiA9IGNsb3NlUmVhc29uID09PSAnZXNjJyB8fCBjbG9zZVJlYXNvbiA9PT0gJ2JhY2tkcm9wLWNsaWNrJyA/IHRoaXMuZGlhbG9nU2VydmljZS5nZXRMYXN0T3BlbmVkRGlhbG9nKCkgOiB0aGlzLmRpYWxvZ1NlcnZpY2UuZ2V0RGlhbG9nUmVmRnJvbUNsb3NlZERpYWxvZ3MoKTtcbiAgICAgICAgICAgICAgICBpZiAocmVmID09PSB0aGlzKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHJlbW92ZSB0aGUgZGlhbG9nIHJlZmVyZW5jZSBmcm9tIG9wZW5lZCBkaWFsb2dzIGFuZCBjbG9zZWQgZGlhbG9nc1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UucmVtb3ZlRnJvbU9wZW5lZERpYWxvZ3MocmVmKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnJlbW92ZUZyb21DbG9zZWREaWFsb2dzKHJlZik7XG4gICAgICAgICAgICAgICAgICAgIGludm9rZUNsb3NlZENhbGxiYWNrKHJlZik7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZWYuY2xvc2VDYWxsQmFja0ZuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZWYuY2xvc2VDYWxsQmFja0ZuKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHRoaXMuYnNNb2RhbC5vbkhpZGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAvLyAgV2lsbCBkZS1hY3RpdmF0ZSBmb2N1cyB0cmFwIGZvciB0aGUgcmVzcGVjdGl2ZSBkaWFsb2cgd2hlbiB0aGV5IGFyZSBjbG9zZWQuXG4gICAgICAgICAgICAgICAgY29uc3QgcmVmID0gdGhpcy5kaWFsb2dTZXJ2aWNlLmdldERpYWxvZ1JlZkZyb21DbG9zZWREaWFsb2dzKCk7XG4gICAgICAgICAgICAgICAgaWYgKHJlZiAmJiBmb2N1c1RyYXBPYmpbcmVmLnRpdGxlSWRdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9jdXNUcmFwT2JqW3JlZi50aXRsZUlkXS5kZWFjdGl2YXRlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICByb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICAgIHRoaXMucmVnaXN0ZXJEZXN0cm95TGlzdGVuZXIoKCkgPT4gey8vIHJlbW92ZSB0aGUgZGlhbG9nIHJlZmVyZW5jZSBmcm9tIG9wZW5lZCBkaWFsb2dzIGFuZCBjbG9zZWQgZGlhbG9nc1xuICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnJlbW92ZUZyb21PcGVuZWREaWFsb2dzKHRoaXMpO1xuICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnJlbW92ZUZyb21DbG9zZWREaWFsb2dzKHRoaXMpO1xuICAgICAgICAgICAgc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3BlbnMgdGhlIGRpYWxvZ1xuICAgICAqIFN1YnNjcmliZSB0byB0aGUgb25TaG93biBldmVudCBlbWl0dGVyIG9mIGJzTW9kYWwgYW5kIHRyaWdnZXIgb24tb3BlbmVkIGV2ZW50IGNhbGxiYWNrXG4gICAgICovXG4gICAgcHVibGljIG9wZW4oaW5pdFN0YXRlPzogYW55KSB7XG5cbiAgICAgICAgLy8gcmVtb3ZlIHRoZSBwb3BvdmVycyBpbiB0aGUgcGFnZSB0byBhdm9pZCB0aGUgb3ZlcmxhcCB3aXRoIGRpYWxvZ1xuICAgICAgICAvLyBjbG9zZVBvcG92ZXIodGhpcy4kZWxlbWVudCk7IENvbW1lbnRpbmcgdGhpcyBsaW5lIGJlY2F1c2UgaXQgaXMgY2F1c2luZyByZWdyZXNzaW9uKGlmIHdlIGhhdmUgZGlhbG9nIGluc2lkZSBwb3BvdmVyIGFzIHBhcnRhaWwgY29udGVudCwgdGhlbiB0aGUgZGlhbG9nIGNsb3NlIGlzIG5vdCB3b3JraW5nIGJlY2F1c2Ugb24gY2xvc2luZyB0aGUgcG9wb3ZlciB0aGUgcGFydGlhbCBnZXQgZGVzdHJveWVkLilcblxuICAgICAgICAvLyBkbyBub3Qgb3BlbiB0aGUgZGlhbG9nIGFnYWluIGlmIGl0IGlzIGFscmVhZHkgb3BlbmVkXG4gICAgICAgIGNvbnN0IGR1cGxpY2F0ZURpYWxvZ0NoZWNrID0gKG9wZW5lZERpYWxvZykgPT4ge1xuICAgICAgICAgICByZXR1cm4gb3BlbmVkRGlhbG9nID09PSB0aGlzO1xuICAgICAgICB9O1xuXG4gICAgICAgIGlmICh0aGlzLmRpYWxvZ1NlcnZpY2UuZ2V0T3BlbmVkRGlhbG9ncygpLnNvbWUoZHVwbGljYXRlRGlhbG9nQ2hlY2spKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuYWRkVG9PcGVuZWREaWFsb2dzKHRoaXMpO1xuXG4gICAgICAgIC8vIGV4dGVuZCB0aGUgY29udGV4dCB3aXRoIHRoZSBpbml0U3RhdGVcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLmNvbnRleHQsIGluaXRTdGF0ZSk7XG4gICAgICAgIHRoaXMubW9kYWxPcHRpb25zLmFyaWFMYWJlbGxlZEJ5ID0gdGhpcy50aXRsZUlkO1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZiA9IHRoaXMuYnNNb2RhbC5zaG93KHRoaXMuZ2V0VGVtcGxhdGVSZWYoKSwgdGhpcy5tb2RhbE9wdGlvbnMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNsb3NlcyB0aGUgZGlhbG9nXG4gICAgICogaW52b2tlcyB0aGUgb24tY2xvc2UgZXZlbnQgY2FsbGJhY2tcbiAgICAgKi9cbiAgICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgICAgIC8vIHJlbW92ZSB0aGUgcG9wb3ZlcnMgaW4gdGhlIHBhZ2UgdG8gYXZvaWQgdGhlIG92ZXJsYXAgd2l0aCBkaWFsb2dcbiAgICAgICAgLy8gY2xvc2VQb3BvdmVyKHRoaXMuJGVsZW1lbnQpOyBDb21tZW50aW5nIHRoaXMgbGluZSBiZWNhdXNlIGl0IGlzIGNhdXNpbmcgcmVncmVzc2lvbihpZiB3ZSBoYXZlIGRpYWxvZyBpbnNpZGUgcG9wb3ZlciBhcyBwYXJ0YWlsIGNvbnRlbnQsIHRoZW4gdGhlIGRpYWxvZyBjbG9zZSBpcyBub3Qgd29ya2luZyBiZWNhdXNlIG9uIGNsb3NpbmcgdGhlIHBvcG92ZXIgdGhlIHBhcnRpYWwgZ2V0IGRlc3Ryb3llZC4pXG4gICAgICAgIGlmICh0aGlzLmRpYWxvZ1JlZikge1xuICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLmFkZFRvQ2xvc2VkRGlhbG9ncyh0aGlzKTtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nUmVmLmhpZGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlZ2lzdGVyIHRoZSBkaWFsb2cgd2l0aCB0aGUgZGlhbG9nIHNlcnZpY2UgZm9yIHByb2dyYW1tYXRpYyBhY2Nlc3NcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVnaXN0ZXIoc2NvcGUpIHtcbiAgICAgICAgLy8gYWRkIHNjb3BlIGFsb25nIHdpdGggbmFtZSBpbiB0aGUgZGlhbG9nUmVmc0NvbGxlY3Rpb24gTWFwIHdoaWxlIHJlZ2lzdGVyaW5nIGRpYWxvZ1xuICAgICAgICAvLyBTbyB0aGF0IDIgZGlhbG9ncyBoYXZpbmcgc2FtZSBuYW1lIG9uIGRpZmZlcmVudCBwYWdlcyB3b24ndCBiZSBvdmVycmlkZGVuLlxuICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UucmVnaXN0ZXIodGhpcy5uYW1lLCB0aGlzLCBzY29wZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGUgUmVnaXN0ZXIgdGhlIGRpYWxvZyB3aXRoIHRoZSBkaWFsb2cgc2VydmljZSBhZnRlciBkaWFsb2cgZGVzdHJ1Y3Rpb25cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZGVSZWdpc3RlcihzY29wZSkge1xuICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuZGVSZWdpc3Rlcih0aGlzLm5hbWUsIHNjb3BlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBzdWJjbGFzc2VzIG9mIEJhc2VEaWFsb2cgbXVzdCBpbXBsZW1lbnQgdGhpcyBtZXRob2QgdG8gcmV0dXJuIHRoZSBwcm9wZXIgdGVtcGxhdGUgZWxlbWVudCByZWZcbiAgICAgKiBic01vZGFsIHdpbGwgdXNlIHRoaXMgcmVmZW5jZSB0byBvcGVuIHRoZSBkaWFsb2dcbiAgICAgKiBAcmV0dXJucyB7VGVtcGxhdGVSZWY8YW55Pn1cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0VGVtcGxhdGVSZWYoKTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIHByb3RlY3RlZCBvblByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdj86IGFueSkge1xuICAgICAgICAvLyBpZ25vcmUgdGhlIGNsYXNzIGF0dHJpYnV0ZS5cbiAgICAgICAgLy8gUHJldmVudCB0aGUgZnJhbWV3b3JrIGZyb20gc2V0dGluZyB0aGUgY2xhc3Mgb24gdGhlIGhvc3QgZWxlbWVudC5cbiAgICAgICAgaWYgKGtleSA9PT0gJ2NsYXNzJyB8fCBrZXkgPT09ICduYW1lJyB8fCBrZXkgPT09ICd0YWJpbmRleCcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdhbmltYXRpb24nKSB7XG4gICAgICAgICAgICB0aGlzLm1vZGFsT3B0aW9ucy5jbGFzcyA9IHRoaXMubW9kYWxPcHRpb25zLmNsYXNzLnJlcGxhY2UoJyBhbmltYXRlZCAnICsgb3YsICcnKTtcbiAgICAgICAgICAgIGlmIChudikge1xuICAgICAgICAgICAgICAgIHRoaXMubW9kYWxPcHRpb25zLmNsYXNzID0gdGhpcy5tb2RhbE9wdGlvbnMuY2xhc3MgKyAnIGFuaW1hdGVkICcgKyBudjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5kZVJlZ2lzdGVyKHRoaXMudmlld1BhcmVudCk7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuIl19
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kaWFsb2cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvZGlhbG9ncy9kZWZhdWx0L3NyYy9iYXNlLWRpYWxvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUEwQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQWMsY0FBYyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSS9FLE9BQU8sRUFBQyxxQkFBcUIsRUFBZ0IsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFFckgsT0FBTyxFQUFFLGFBQWEsRUFBMEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFHeEUsSUFBSSxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7QUFFN0IsSUFBSSxZQUFZLEdBQUc7SUFDZixhQUFhLEVBQUUsSUFBSTtDQUN0QixDQUFDO0FBRUYsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFO0lBQ2pDLElBQUksR0FBRyxFQUFFO1FBQ0wsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLE1BQU0sSUFBSSxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM3QywyRkFBMkY7WUFDM0YsSUFBSSxJQUFJLEVBQUU7Z0JBQ04sQ0FBQyxDQUFDLDhCQUE4QixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7YUFDN0Q7WUFDRCxHQUFHLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLEVBQUMsTUFBTSxFQUFFLEVBQUMsSUFBSSxFQUFFLFFBQVEsRUFBQyxFQUFDLENBQUMsQ0FBQztZQUM5RCwySEFBMkg7WUFDM0gsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFDLG9CQUFvQixHQUFHLEdBQUcsQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFakUsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FDekQsMEtBQTBLLENBQzNLLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQ2IsT0FBTyxDQUNMLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQTtZQUNyRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVSLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBRXhDLFlBQVksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsZUFBZSxDQUFDLFNBQVMsRUFBRTtnQkFDbkQsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztnQkFDdEQsWUFBWSxFQUFFLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztnQkFDM0QsaUJBQWlCLEVBQUUsSUFBSTtnQkFDdkIsY0FBYyxFQUFFLFlBQVksQ0FBQyxhQUFhO2FBQzdDLENBQUMsQ0FBQztZQUNILFlBQVksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7S0FDTjtBQUNMLENBQUMsQ0FBQzs7QUFFRixNQUFNLG9CQUFvQixHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUU7SUFDakMsSUFBSSxHQUFHLEVBQUU7UUFDTCxHQUFHLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsR0FBRyxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7S0FDN0I7QUFDTCxDQUFDLENBQUM7O0FBR0YsTUFBTSxPQUFnQixVQUFXLFNBQVEsYUFBYTtJQVdsRCxZQUNJLEdBQWEsRUFDYixZQUEyQixFQUNqQixZQUEwQjtRQUVwQyxLQUFLLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRmYsaUJBQVksR0FBWixZQUFZLENBQWM7UUFMakMsWUFBTyxHQUFVLFdBQVcsR0FBRyxZQUFZLEVBQUUsQ0FBQztRQVFqRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdkMsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUvQixNQUFNLGFBQWEsR0FBbUI7WUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBQyxFQUFFLEVBQUMsRUFBRSxFQUFFO2dCQUNwQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLENBQUM7Z0JBQ3JELElBQUksR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7b0JBQ2hDLDBGQUEwRjtvQkFDMUYsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO2lCQUN0QjtZQUNMLENBQUMsQ0FBQztZQUNGLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQy9CLFlBQVksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQztZQUN4RCxDQUFDLENBQUM7WUFDRixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtnQkFDNUMsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO2dCQUM3RCxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQSxXQUFXLGFBQVgsV0FBVyx1QkFBWCxXQUFXLENBQUUsRUFBRSxNQUFLLElBQUksQ0FBQyxRQUFRLEVBQUU7b0JBQ3BELEdBQUcsR0FBRyxJQUFJLENBQUM7aUJBQ2Q7cUJBQU0sSUFBSSxXQUFXLEtBQUssS0FBSyxJQUFJLFdBQVcsS0FBSyxnQkFBZ0IsRUFBRTtvQkFDbEUsR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztpQkFDbEQ7Z0JBQ0QsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFO29CQUNkLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO29CQUNyQixxRUFBcUU7b0JBQ3JFLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ2hELElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ2hELG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUMxQixJQUFJLEdBQUcsQ0FBQyxlQUFlLEVBQUU7d0JBQ3JCLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztxQkFDekI7aUJBQ0o7WUFDTCxDQUFDLENBQUM7WUFDRixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUMvQiwrRUFBK0U7Z0JBQy9FLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsNkJBQTZCLEVBQUUsQ0FBQztnQkFDL0QsSUFBSSxHQUFHLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxTQUFTLEVBQUU7b0JBQ2hELFlBQVksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7aUJBQzFDO1lBQ0wsQ0FBQyxDQUFDO1lBQ0YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxZQUFZLGFBQWEsRUFBRTtvQkFDNUIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2lCQUNoQjtZQUNMLENBQUMsQ0FBQztTQUNMLENBQUM7UUFDRixJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxFQUFFO1lBQzlCLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNqRCxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksSUFBSSxDQUFDLFNBQWU7UUFFdkIsbUVBQW1FO1FBQ25FLDBPQUEwTztRQUUxTyx1REFBdUQ7UUFDdkQsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLFlBQVksRUFBRSxFQUFFO1lBQzNDLE9BQU8sWUFBWSxLQUFLLElBQUksQ0FBQztRQUNoQyxDQUFDLENBQUM7UUFFRixJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsRUFBRTtZQUNsRSxPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTVDLHdDQUF3QztRQUN4QyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNoRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0UsZ0VBQWdFO1FBQ2hFLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxFQUFFO1lBQ3JGLE1BQU0sY0FBYyxHQUFHLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9DLGNBQWMsQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ3REO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNJLEtBQUs7UUFDUixtRUFBbUU7UUFDbkUsME9BQTBPO1FBQzFPLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDekI7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDTyxRQUFRLENBQUMsS0FBSztRQUNwQixxRkFBcUY7UUFDckYsNkVBQTZFO1FBQzdFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRDs7T0FFRztJQUNPLFVBQVUsQ0FBQyxLQUFLO1FBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQVNTLGdCQUFnQixDQUFDLEdBQVcsRUFBRSxFQUFPLEVBQUUsRUFBUTtRQUNyRCw4QkFBOEI7UUFDOUIsb0VBQW9FO1FBQ3BFLElBQUksR0FBRyxLQUFLLE9BQU8sSUFBSSxHQUFHLEtBQUssTUFBTSxJQUFJLEdBQUcsS0FBSyxVQUFVLEVBQUU7WUFDekQsT0FBTztTQUNWO2FBQU0sSUFBSSxHQUFHLEtBQUssV0FBVyxFQUFFO1lBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2pGLElBQUksRUFBRSxFQUFFO2dCQUNKLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLFlBQVksR0FBRyxFQUFFLENBQUM7YUFDekU7U0FDSjtRQUNELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7OztZQTdKSixVQUFVOzs7WUF6REYsUUFBUTs7WUFFb0IsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yLCBPbkRlc3Ryb3ksIFRlbXBsYXRlUmVmLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQnNNb2RhbFJlZiwgQnNNb2RhbFNlcnZpY2UsIE1vZGFsT3B0aW9ucyB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtBYnN0cmFjdERpYWxvZ1NlcnZpY2UsIGNsb3NlUG9wb3ZlciwgZmluZFJvb3RDb250YWluZXIsIGdlbmVyYXRlR1VJZCwgaXNNb2JpbGUsIGlzTW9iaWxlQXBwfSBmcm9tICdAd20vY29yZSc7XG5cbmltcG9ydCB7IEJhc2VDb21wb25lbnQsIElEaWFsb2csIElXaWRnZXRDb25maWcgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7IGNyZWF0ZUZvY3VzVHJhcCB9IGZyb20gJ0B3YXZlbWFrZXIvZm9jdXMtdHJhcC9kaXN0L2ZvY3VzLXRyYXAnO1xuZGVjbGFyZSBjb25zdCBfO1xuXG5sZXQgZXZlbnRzUmVnaXN0ZXJlZCA9IGZhbHNlO1xuXG5sZXQgZm9jdXNUcmFwT2JqID0ge1xuICAgIGFjdGl2ZUVsZW1lbnQ6IG51bGxcbn07XG5cbmNvbnN0IGludm9rZU9wZW5lZENhbGxiYWNrID0gKHJlZikgPT4ge1xuICAgIGlmIChyZWYpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByb290ID0gZmluZFJvb3RDb250YWluZXIocmVmLiRlbGVtZW50KTtcbiAgICAgICAgICAgIC8vIGlmIHBhZ2Ugc3R5bGVzIGhhdmUgdG8gYmUgYXBwbGllZCB0byBkaWFsb2cgdGhlbiBkaWFsb2cgaGFzIHRvIGJlIGNoaWxkIG9mIHBhZ2UgZWxlbWVudC5cbiAgICAgICAgICAgIGlmIChyb290KSB7XG4gICAgICAgICAgICAgICAgJCgnYm9keSA+IG1vZGFsLWNvbnRhaW5lciA+IGRpdicpLndyYXAoJzwnICsgcm9vdCArICcvPicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVmLmludm9rZUV2ZW50Q2FsbGJhY2soJ29wZW5lZCcsIHskZXZlbnQ6IHt0eXBlOiAnb3BlbmVkJ319KTtcbiAgICAgICAgICAgIC8vIGZvY3VzVHJhcE9iaiB3aWxsIGNyZWF0ZSBmb2N1cyB0cmFwIGZvciB0aGUgcmVzcGVjdGl2ZSBkaWFsb2cgYWNjb3JkaW5nIHRvIHRoZSB0aXRsZUlkIGFzc2lnbmVkIHRvIHRoZW0gd2hpY2ggaXMgdW5pcXVlLlxuICAgICAgICAgICAgY29uc3QgY29udGFpbmVyID0gJCgnW2FyaWEtbGFiZWxsZWRieT0gJyArIHJlZi50aXRsZUlkICsgJ10nKVswXTtcblxuICAgICAgICAgICAgY29uc3Qga2V5Ym9hcmRGb2N1c2FibGVFbGVtZW50cyA9IFtjb250YWluZXIucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgICAgICAgICAnYSwgYnV0dG9uLCBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCwgZGV0YWlscywgaWZyYW1lLCBlbWJlZCwgb2JqZWN0LCBzdW1tYXJ5IGRpYWxvZywgYXVkaW9bY29udHJvbHNdLCB2aWRlb1tjb250cm9sc10sIFtjb250ZW50ZWRpdGFibGVdLCBbdGFiaW5kZXhdOm5vdChbdGFiaW5kZXg9XCItMVwiXSknXG4gICAgICAgICAgICAgICldLmZpbHRlcihlbCA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICFlbFswXS5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgJiYgIWVsWzBdLmhhc0F0dHJpYnV0ZSgnaGlkZGVuJykpXG4gICAgICAgICAgICAgIH0pWzBdO1xuXG4gICAgICAgICAgICAkKGtleWJvYXJkRm9jdXNhYmxlRWxlbWVudHNbMF0pLmZvY3VzKCk7XG5cbiAgICAgICAgICAgIGZvY3VzVHJhcE9ialtyZWYudGl0bGVJZF0gPSBjcmVhdGVGb2N1c1RyYXAoY29udGFpbmVyLCB7XG4gICAgICAgICAgICAgICAgb25BY3RpdmF0ZTogKCkgPT4gY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoJ2lzLWFjdGl2ZScpLFxuICAgICAgICAgICAgICAgIG9uRGVhY3RpdmF0ZTogKCkgPT4gY29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoJ2lzLWFjdGl2ZScpLFxuICAgICAgICAgICAgICAgIGFsbG93T3V0c2lkZUNsaWNrOiB0cnVlLFxuICAgICAgICAgICAgICAgIHNldFJldHVybkZvY3VzOiBmb2N1c1RyYXBPYmouYWN0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZm9jdXNUcmFwT2JqW3JlZi50aXRsZUlkXS5hY3RpdmF0ZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG59O1xuXG5jb25zdCBpbnZva2VDbG9zZWRDYWxsYmFjayA9IChyZWYpID0+IHtcbiAgICBpZiAocmVmKSB7XG4gICAgICAgIHJlZi5pbnZva2VFdmVudENhbGxiYWNrKCdjbG9zZScpO1xuICAgICAgICByZWYuZGlhbG9nUmVmID0gdW5kZWZpbmVkO1xuICAgIH1cbn07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRGlhbG9nIGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIElEaWFsb2csIE9uRGVzdHJveSB7XG5cbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2dTZXJ2aWNlOiBBYnN0cmFjdERpYWxvZ1NlcnZpY2U7XG4gICAgcHJpdmF0ZSByZWFkb25seSBic01vZGFsOiBCc01vZGFsU2VydmljZTtcblxuICAgIHByaXZhdGUgZGlhbG9nUmVmOiBCc01vZGFsUmVmO1xuICAgIHByaXZhdGUgZGlhbG9nSWQ6IG51bWJlcjtcbiAgICBwdWJsaWMgdGl0bGVJZDpzdHJpbmcgPSAnd21kaWFsb2ctJyArIGdlbmVyYXRlR1VJZCgpO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgICAgICBpbmo6IEluamVjdG9yLFxuICAgICAgICB3aWRnZXRDb25maWc6IElXaWRnZXRDb25maWcsXG4gICAgICAgIHByb3RlY3RlZCBtb2RhbE9wdGlvbnM6IE1vZGFsT3B0aW9uc1xuICAgICkge1xuICAgICAgICBzdXBlcihpbmosIHdpZGdldENvbmZpZyk7XG4gICAgICAgIHRoaXMuZGlhbG9nU2VydmljZSA9IGluai5nZXQoQWJzdHJhY3REaWFsb2dTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5ic01vZGFsID0gaW5qLmdldChCc01vZGFsU2VydmljZSk7XG4gICAgICAgIGNvbnN0IHJvdXRlciA9IGluai5nZXQoUm91dGVyKTtcblxuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtcbiAgICAgICAgICAgIHRoaXMuYnNNb2RhbC5vblNob3duLnN1YnNjcmliZSgoe2lkfSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlZiA9IHRoaXMuZGlhbG9nU2VydmljZS5nZXRMYXN0T3BlbmVkRGlhbG9nKCk7XG4gICAgICAgICAgICAgICAgaWYgKHJlZiA9PT0gdGhpcyAmJiAhdGhpcy5kaWFsb2dJZCkge1xuICAgICAgICAgICAgICAgICAgICAvLyBBbHdheXMgZ2V0IHRoZSByZWZlcmVuY2Ugb2YgbGFzdCBwdXNoZWQgZGlhbG9nIGluIHRoZSBhcnJheSBmb3IgY2FsbGluZyBvbk9wZW4gY2FsbGJhY2tcbiAgICAgICAgICAgICAgICAgICAgaW52b2tlT3BlbmVkQ2FsbGJhY2socmVmKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dJZCA9IGlkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGhpcy5ic01vZGFsLm9uU2hvdy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGZvY3VzVHJhcE9iai5hY3RpdmVFbGVtZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGhpcy5ic01vZGFsLm9uSGlkZGVuLnN1YnNjcmliZSgoY2xvc2VSZWFzb24pID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgcmVmID0gdGhpcy5kaWFsb2dTZXJ2aWNlLmdldERpYWxvZ1JlZkZyb21DbG9zZWREaWFsb2dzKCk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZGlhbG9nSWQgJiYgY2xvc2VSZWFzb24/LmlkID09PSB0aGlzLmRpYWxvZ0lkKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlZiA9IHRoaXM7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChjbG9zZVJlYXNvbiA9PT0gJ2VzYycgfHwgY2xvc2VSZWFzb24gPT09ICdiYWNrZHJvcC1jbGljaycpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVmID0gdGhpcy5kaWFsb2dTZXJ2aWNlLmdldExhc3RPcGVuZWREaWFsb2coKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHJlZiA9PT0gdGhpcykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ0lkID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgLy8gcmVtb3ZlIHRoZSBkaWFsb2cgcmVmZXJlbmNlIGZyb20gb3BlbmVkIGRpYWxvZ3MgYW5kIGNsb3NlZCBkaWFsb2dzXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5yZW1vdmVGcm9tT3BlbmVkRGlhbG9ncyhyZWYpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UucmVtb3ZlRnJvbUNsb3NlZERpYWxvZ3MocmVmKTtcbiAgICAgICAgICAgICAgICAgICAgaW52b2tlQ2xvc2VkQ2FsbGJhY2socmVmKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlZi5jbG9zZUNhbGxCYWNrRm4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZi5jbG9zZUNhbGxCYWNrRm4oKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGhpcy5ic01vZGFsLm9uSGlkZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vICBXaWxsIGRlLWFjdGl2YXRlIGZvY3VzIHRyYXAgZm9yIHRoZSByZXNwZWN0aXZlIGRpYWxvZyB3aGVuIHRoZXkgYXJlIGNsb3NlZC5cbiAgICAgICAgICAgICAgICBjb25zdCByZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2UuZ2V0RGlhbG9nUmVmRnJvbUNsb3NlZERpYWxvZ3MoKTtcbiAgICAgICAgICAgICAgICBpZiAocmVmICYmIGZvY3VzVHJhcE9ialtyZWYudGl0bGVJZF0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBmb2N1c1RyYXBPYmpbcmVmLnRpdGxlSWRdLmRlYWN0aXZhdGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGUgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgXTtcbiAgICAgICAgdGhpcy5yZWdpc3RlckRlc3Ryb3lMaXN0ZW5lcigoKSA9PiB7Ly8gcmVtb3ZlIHRoZSBkaWFsb2cgcmVmZXJlbmNlIGZyb20gb3BlbmVkIGRpYWxvZ3MgYW5kIGNsb3NlZCBkaWFsb2dzXG4gICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UucmVtb3ZlRnJvbU9wZW5lZERpYWxvZ3ModGhpcyk7XG4gICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UucmVtb3ZlRnJvbUNsb3NlZERpYWxvZ3ModGhpcyk7XG4gICAgICAgICAgICBzdWJzY3JpcHRpb25zLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPcGVucyB0aGUgZGlhbG9nXG4gICAgICogU3Vic2NyaWJlIHRvIHRoZSBvblNob3duIGV2ZW50IGVtaXR0ZXIgb2YgYnNNb2RhbCBhbmQgdHJpZ2dlciBvbi1vcGVuZWQgZXZlbnQgY2FsbGJhY2tcbiAgICAgKi9cbiAgICBwdWJsaWMgb3Blbihpbml0U3RhdGU/OiBhbnkpIHtcblxuICAgICAgICAvLyByZW1vdmUgdGhlIHBvcG92ZXJzIGluIHRoZSBwYWdlIHRvIGF2b2lkIHRoZSBvdmVybGFwIHdpdGggZGlhbG9nXG4gICAgICAgIC8vIGNsb3NlUG9wb3Zlcih0aGlzLiRlbGVtZW50KTsgQ29tbWVudGluZyB0aGlzIGxpbmUgYmVjYXVzZSBpdCBpcyBjYXVzaW5nIHJlZ3Jlc3Npb24oaWYgd2UgaGF2ZSBkaWFsb2cgaW5zaWRlIHBvcG92ZXIgYXMgcGFydGFpbCBjb250ZW50LCB0aGVuIHRoZSBkaWFsb2cgY2xvc2UgaXMgbm90IHdvcmtpbmcgYmVjYXVzZSBvbiBjbG9zaW5nIHRoZSBwb3BvdmVyIHRoZSBwYXJ0aWFsIGdldCBkZXN0cm95ZWQuKVxuXG4gICAgICAgIC8vIGRvIG5vdCBvcGVuIHRoZSBkaWFsb2cgYWdhaW4gaWYgaXQgaXMgYWxyZWFkeSBvcGVuZWRcbiAgICAgICAgY29uc3QgZHVwbGljYXRlRGlhbG9nQ2hlY2sgPSAob3BlbmVkRGlhbG9nKSA9PiB7XG4gICAgICAgICAgIHJldHVybiBvcGVuZWREaWFsb2cgPT09IHRoaXM7XG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKHRoaXMuZGlhbG9nU2VydmljZS5nZXRPcGVuZWREaWFsb2dzKCkuc29tZShkdXBsaWNhdGVEaWFsb2dDaGVjaykpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5hZGRUb09wZW5lZERpYWxvZ3ModGhpcyk7XG5cbiAgICAgICAgLy8gZXh0ZW5kIHRoZSBjb250ZXh0IHdpdGggdGhlIGluaXRTdGF0ZVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuY29udGV4dCwgaW5pdFN0YXRlKTtcbiAgICAgICAgdGhpcy5tb2RhbE9wdGlvbnMuYXJpYUxhYmVsbGVkQnkgPSB0aGlzLnRpdGxlSWQ7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5ic01vZGFsLnNob3codGhpcy5nZXRUZW1wbGF0ZVJlZigpLCB0aGlzLm1vZGFsT3B0aW9ucyk7XG4gICAgICAgIC8vIEZpeCBmb3IgW1dNUy0yMzk0OF06IEZvY3VzIG1vdmluZyBvdXQgb2YgYWN0aXZlIERpYWxvZyB3aWRnZXRcbiAgICAgICAgaWYgKHRoaXMuZGlhbG9nU2VydmljZS5nZXRPcGVuZWREaWFsb2dzKCkubGVuZ3RoID09PSAxICYmIChpc01vYmlsZSgpIHx8IGlzTW9iaWxlQXBwKCkpKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnRTZWxlY3RvciA9ICQoJ2JvZHkgPiBhcHAtcm9vdCcpWzBdO1xuICAgICAgICAgICAgcGFyZW50U2VsZWN0b3Iuc2V0QXR0cmlidXRlKCdhcmlhLWhpZGRlbicsICd0cnVlJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjbG9zZXMgdGhlIGRpYWxvZ1xuICAgICAqIGludm9rZXMgdGhlIG9uLWNsb3NlIGV2ZW50IGNhbGxiYWNrXG4gICAgICovXG4gICAgcHVibGljIGNsb3NlKCkge1xuICAgICAgICAvLyByZW1vdmUgdGhlIHBvcG92ZXJzIGluIHRoZSBwYWdlIHRvIGF2b2lkIHRoZSBvdmVybGFwIHdpdGggZGlhbG9nXG4gICAgICAgIC8vIGNsb3NlUG9wb3Zlcih0aGlzLiRlbGVtZW50KTsgQ29tbWVudGluZyB0aGlzIGxpbmUgYmVjYXVzZSBpdCBpcyBjYXVzaW5nIHJlZ3Jlc3Npb24oaWYgd2UgaGF2ZSBkaWFsb2cgaW5zaWRlIHBvcG92ZXIgYXMgcGFydGFpbCBjb250ZW50LCB0aGVuIHRoZSBkaWFsb2cgY2xvc2UgaXMgbm90IHdvcmtpbmcgYmVjYXVzZSBvbiBjbG9zaW5nIHRoZSBwb3BvdmVyIHRoZSBwYXJ0aWFsIGdldCBkZXN0cm95ZWQuKVxuICAgICAgICBpZiAodGhpcy5kaWFsb2dSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5hZGRUb0Nsb3NlZERpYWxvZ3ModGhpcyk7XG4gICAgICAgICAgICB0aGlzLmRpYWxvZ1JlZi5oaWRlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlciB0aGUgZGlhbG9nIHdpdGggdGhlIGRpYWxvZyBzZXJ2aWNlIGZvciBwcm9ncmFtbWF0aWMgYWNjZXNzXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlZ2lzdGVyKHNjb3BlKSB7XG4gICAgICAgIC8vIGFkZCBzY29wZSBhbG9uZyB3aXRoIG5hbWUgaW4gdGhlIGRpYWxvZ1JlZnNDb2xsZWN0aW9uIE1hcCB3aGlsZSByZWdpc3RlcmluZyBkaWFsb2dcbiAgICAgICAgLy8gU28gdGhhdCAyIGRpYWxvZ3MgaGF2aW5nIHNhbWUgbmFtZSBvbiBkaWZmZXJlbnQgcGFnZXMgd29uJ3QgYmUgb3ZlcnJpZGRlbi5cbiAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnJlZ2lzdGVyKHRoaXMubmFtZSwgdGhpcywgc2NvcGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERlIFJlZ2lzdGVyIHRoZSBkaWFsb2cgd2l0aCB0aGUgZGlhbG9nIHNlcnZpY2UgYWZ0ZXIgZGlhbG9nIGRlc3RydWN0aW9uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGRlUmVnaXN0ZXIoc2NvcGUpIHtcbiAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLmRlUmVnaXN0ZXIodGhpcy5uYW1lLCBzY29wZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogc3ViY2xhc3NlcyBvZiBCYXNlRGlhbG9nIG11c3QgaW1wbGVtZW50IHRoaXMgbWV0aG9kIHRvIHJldHVybiB0aGUgcHJvcGVyIHRlbXBsYXRlIGVsZW1lbnQgcmVmXG4gICAgICogYnNNb2RhbCB3aWxsIHVzZSB0aGlzIHJlZmVuY2UgdG8gb3BlbiB0aGUgZGlhbG9nXG4gICAgICogQHJldHVybnMge1RlbXBsYXRlUmVmPGFueT59XG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGdldFRlbXBsYXRlUmVmKCk6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBwcm90ZWN0ZWQgb25Qcm9wZXJ0eUNoYW5nZShrZXk6IHN0cmluZywgbnY6IGFueSwgb3Y/OiBhbnkpIHtcbiAgICAgICAgLy8gaWdub3JlIHRoZSBjbGFzcyBhdHRyaWJ1dGUuXG4gICAgICAgIC8vIFByZXZlbnQgdGhlIGZyYW1ld29yayBmcm9tIHNldHRpbmcgdGhlIGNsYXNzIG9uIHRoZSBob3N0IGVsZW1lbnQuXG4gICAgICAgIGlmIChrZXkgPT09ICdjbGFzcycgfHwga2V5ID09PSAnbmFtZScgfHwga2V5ID09PSAndGFiaW5kZXgnKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAnYW5pbWF0aW9uJykge1xuICAgICAgICAgICAgdGhpcy5tb2RhbE9wdGlvbnMuY2xhc3MgPSB0aGlzLm1vZGFsT3B0aW9ucy5jbGFzcy5yZXBsYWNlKCcgYW5pbWF0ZWQgJyArIG92LCAnJyk7XG4gICAgICAgICAgICBpZiAobnYpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1vZGFsT3B0aW9ucy5jbGFzcyA9IHRoaXMubW9kYWxPcHRpb25zLmNsYXNzICsgJyBhbmltYXRlZCAnICsgbnY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3VwZXIub25Qcm9wZXJ0eUNoYW5nZShrZXksIG52LCBvdik7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIHRoaXMuZGVSZWdpc3Rlcih0aGlzLnZpZXdQYXJlbnQpO1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Directive, ElementRef, Inject, Renderer2, HostBinding, Injector, Injectable, Component, Input, NgModule } from '@angular/core';
|
|
2
2
|
import { BsModalService, ModalOptions, ModalModule } from 'ngx-bootstrap/modal';
|
|
3
|
-
import { addClass, setCSS, setAttr, findRootContainer, generateGUId, AbstractDialogService, toBoolean } from '@wm/core';
|
|
3
|
+
import { addClass, setCSS, setAttr, findRootContainer, generateGUId, AbstractDialogService, isMobile, isMobileApp, toBoolean } from '@wm/core';
|
|
4
4
|
import { DialogRef, register, PROP_STRING, PROP_BOOLEAN, BaseComponent, provideAsWidgetRef, WmComponentsModule } from '@wm/components/base';
|
|
5
5
|
import { Router, NavigationEnd } from '@angular/router';
|
|
6
6
|
import { createFocusTrap } from '@wavemaker/focus-trap/dist/focus-trap';
|
|
@@ -136,19 +136,27 @@ class BaseDialog extends BaseComponent {
|
|
|
136
136
|
this.bsModal = inj.get(BsModalService);
|
|
137
137
|
const router = inj.get(Router);
|
|
138
138
|
const subscriptions = [
|
|
139
|
-
this.bsModal.onShown.subscribe(() => {
|
|
139
|
+
this.bsModal.onShown.subscribe(({ id }) => {
|
|
140
140
|
const ref = this.dialogService.getLastOpenedDialog();
|
|
141
|
-
if (ref === this) {
|
|
141
|
+
if (ref === this && !this.dialogId) {
|
|
142
142
|
// Always get the reference of last pushed dialog in the array for calling onOpen callback
|
|
143
143
|
invokeOpenedCallback(ref);
|
|
144
|
+
this.dialogId = id;
|
|
144
145
|
}
|
|
145
146
|
}),
|
|
146
147
|
this.bsModal.onShow.subscribe(() => {
|
|
147
148
|
focusTrapObj.activeElement = document.activeElement;
|
|
148
149
|
}),
|
|
149
150
|
this.bsModal.onHidden.subscribe((closeReason) => {
|
|
150
|
-
|
|
151
|
+
let ref = this.dialogService.getDialogRefFromClosedDialogs();
|
|
152
|
+
if (this.dialogId && (closeReason === null || closeReason === void 0 ? void 0 : closeReason.id) === this.dialogId) {
|
|
153
|
+
ref = this;
|
|
154
|
+
}
|
|
155
|
+
else if (closeReason === 'esc' || closeReason === 'backdrop-click') {
|
|
156
|
+
ref = this.dialogService.getLastOpenedDialog();
|
|
157
|
+
}
|
|
151
158
|
if (ref === this) {
|
|
159
|
+
this.dialogId = null;
|
|
152
160
|
// remove the dialog reference from opened dialogs and closed dialogs
|
|
153
161
|
this.dialogService.removeFromOpenedDialogs(ref);
|
|
154
162
|
this.dialogService.removeFromClosedDialogs(ref);
|
|
@@ -196,6 +204,11 @@ class BaseDialog extends BaseComponent {
|
|
|
196
204
|
Object.assign(this.context, initState);
|
|
197
205
|
this.modalOptions.ariaLabelledBy = this.titleId;
|
|
198
206
|
this.dialogRef = this.bsModal.show(this.getTemplateRef(), this.modalOptions);
|
|
207
|
+
// Fix for [WMS-23948]: Focus moving out of active Dialog widget
|
|
208
|
+
if (this.dialogService.getOpenedDialogs().length === 1 && (isMobile() || isMobileApp())) {
|
|
209
|
+
const parentSelector = $('body > app-root')[0];
|
|
210
|
+
parentSelector.setAttribute('aria-hidden', 'true');
|
|
211
|
+
}
|
|
199
212
|
}
|
|
200
213
|
/**
|
|
201
214
|
* closes the dialog
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../projects/components/widgets/dialogs/default/src/dialog-body/dialog-body.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.props.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/base-dialog.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-header/dialog-header.component.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog.module.ts","../../../../../projects/components/widgets/dialogs/default/src/index.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, Inject, Renderer2 } from '@angular/core';\n\nimport { BsModalService } from 'ngx-bootstrap/modal';\n\nimport { addClass, setAttr, setCSS } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\n\ndeclare const $;\n\nconst DEFAULT_CLS = 'app-dialog-body modal-body';\n\n@Directive({\n selector: 'div[wmDialogBody]',\n})\nexport class DialogBodyDirective {\n @HostBinding('style.height') height;\n constructor(\n elRef: ElementRef,\n @Inject(DialogRef) private dialogRef,\n bsModal: BsModalService,\n private renderer: Renderer2\n ) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n\n const subscription = bsModal.onShown.subscribe(() => {\n const dialogRoot = $(elRef.nativeElement).closest('.app-dialog')[0];\n let dialogRootContainer = $('body.wm-app')[0];\n // To identify the microfrontend, if body tag doesn't have wm-app class then app loading as micro-frontend\n if(!dialogRootContainer) {\n const dialogBackrop = $('body > .modal-backdrop')[0];\n const parentContainer = $('body > modal-container')[0];\n dialogRootContainer = $('.wm-app')[0];\n if(dialogRootContainer && parentContainer ){\n if(dialogBackrop){\n this.renderer.appendChild(dialogRootContainer, dialogBackrop);\n }\n this.renderer.appendChild(dialogRootContainer, parentContainer);\n \n }\n }\n const width = this.dialogRef.width;\n const height = this.dialogRef.height;\n if(height){\n setTimeout(e=>{\n setCSS($(elRef.nativeElement)[0], 'height', height);\n });\n } \n if (dialogRoot) {\n if (width) {\n setCSS(dialogRoot, 'width', width);\n }\n setAttr(dialogRoot, 'tabindex', this.dialogRef.tabindex);\n setAttr(dialogRoot, 'name', this.dialogRef.name);\n\n }\n subscription.unsubscribe();\n });\n }\n}\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-dialogfooter',\n new Map([\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ])\n );\n};\n","import { Directive, Injector } from '@angular/core';\n\nimport { BaseComponent, IWidgetConfig, provideAsWidgetRef } from '@wm/components/base';\nimport { registerProps } from './dialog-footer.props';\n\nconst WIDGET_INFO: IWidgetConfig = {\n widgetType: 'wm-dialogfooter',\n hostClass: 'app-dialog-footer modal-footer'\n};\n\n@Directive({\n selector: 'div[wmDialogFooter]',\n providers: [\n provideAsWidgetRef(DialogFooterDirective)\n ]\n})\nexport class DialogFooterDirective extends BaseComponent {\n static initializeProps = registerProps();\n\n constructor(inj: Injector) {\n super(inj, WIDGET_INFO);\n }\n}\n","import { Injector, OnDestroy, TemplateRef, Injectable } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { BsModalRef, BsModalService, ModalOptions } from 'ngx-bootstrap/modal';\n\nimport { Subscription } from 'rxjs';\n\nimport {AbstractDialogService, closePopover, findRootContainer, generateGUId} from '@wm/core';\n\nimport { BaseComponent, IDialog, IWidgetConfig } from '@wm/components/base';\nimport { createFocusTrap } from '@wavemaker/focus-trap/dist/focus-trap';\n\ndeclare const _;\n\nlet eventsRegistered = false;\n\nlet focusTrapObj = {\n activeElement: null\n};\n\nconst invokeOpenedCallback = (ref) => {\n if (ref) {\n setTimeout(() => {\n const root = findRootContainer(ref.$element);\n // if page styles have to be applied to dialog then dialog has to be child of page element.\n if (root) {\n $('body > modal-container > div').wrap('<' + root + '/>');\n }\n ref.invokeEventCallback('opened', {$event: {type: 'opened'}});\n // focusTrapObj will create focus trap for the respective dialog according to the titleId assigned to them which is unique.\n const container = $('[aria-labelledby= ' + ref.titleId + ']')[0];\n\n const keyboardFocusableElements = [container.querySelectorAll(\n 'a, button, input, textarea, select, details, iframe, embed, object, summary dialog, audio[controls], video[controls], [contenteditable], [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => {\n return (\n !el[0].hasAttribute('disabled') && !el[0].hasAttribute('hidden'))\n })[0];\n\n $(keyboardFocusableElements[0]).focus();\n\n focusTrapObj[ref.titleId] = createFocusTrap(container, {\n onActivate: () => container.classList.add('is-active'),\n onDeactivate: () => container.classList.remove('is-active'),\n allowOutsideClick: true,\n setReturnFocus: focusTrapObj.activeElement,\n });\n focusTrapObj[ref.titleId].activate();\n });\n }\n};\n\nconst invokeClosedCallback = (ref) => {\n if (ref) {\n ref.invokeEventCallback('close');\n ref.dialogRef = undefined;\n }\n};\n\n@Injectable()\nexport abstract class BaseDialog extends BaseComponent implements IDialog, OnDestroy {\n\n public name: string;\n\n private readonly dialogService: AbstractDialogService;\n private readonly bsModal: BsModalService;\n\n private dialogRef: BsModalRef;\n public titleId:string = 'wmdialog-' + generateGUId();\n\n protected constructor(\n inj: Injector,\n widgetConfig: IWidgetConfig,\n protected modalOptions: ModalOptions\n ) {\n super(inj, widgetConfig);\n this.dialogService = inj.get(AbstractDialogService);\n this.bsModal = inj.get(BsModalService);\n const router = inj.get(Router);\n\n const subscriptions: Subscription[] = [\n this.bsModal.onShown.subscribe(() => {\n const ref = this.dialogService.getLastOpenedDialog();\n if (ref === this) {\n // Always get the reference of last pushed dialog in the array for calling onOpen callback\n invokeOpenedCallback(ref);\n }\n }),\n this.bsModal.onShow.subscribe(() => {\n focusTrapObj.activeElement = document.activeElement;\n }),\n this.bsModal.onHidden.subscribe((closeReason) => {\n const ref = closeReason === 'esc' || closeReason === 'backdrop-click' ? this.dialogService.getLastOpenedDialog() : this.dialogService.getDialogRefFromClosedDialogs();\n if (ref === this) {\n // remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(ref);\n this.dialogService.removeFromClosedDialogs(ref);\n invokeClosedCallback(ref);\n if (ref.closeCallBackFn) {\n ref.closeCallBackFn();\n }\n }\n }),\n this.bsModal.onHide.subscribe(() => {\n // Will de-activate focus trap for the respective dialog when they are closed.\n const ref = this.dialogService.getDialogRefFromClosedDialogs();\n if (ref && focusTrapObj[ref.titleId] !== undefined) {\n focusTrapObj[ref.titleId].deactivate();\n }\n }),\n router.events.subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.close();\n }\n })\n ];\n this.registerDestroyListener(() => {// remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(this);\n this.dialogService.removeFromClosedDialogs(this);\n subscriptions.forEach(s => s.unsubscribe());\n });\n }\n\n /**\n * Opens the dialog\n * Subscribe to the onShown event emitter of bsModal and trigger on-opened event callback\n */\n public open(initState?: any) {\n\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n\n // do not open the dialog again if it is already opened\n const duplicateDialogCheck = (openedDialog) => {\n return openedDialog === this;\n };\n\n if (this.dialogService.getOpenedDialogs().some(duplicateDialogCheck)) {\n return;\n }\n\n this.dialogService.addToOpenedDialogs(this);\n\n // extend the context with the initState\n Object.assign(this.context, initState);\n this.modalOptions.ariaLabelledBy = this.titleId;\n this.dialogRef = this.bsModal.show(this.getTemplateRef(), this.modalOptions);\n }\n\n /**\n * closes the dialog\n * invokes the on-close event callback\n */\n public close() {\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n if (this.dialogRef) {\n this.dialogService.addToClosedDialogs(this);\n this.dialogRef.hide();\n }\n }\n\n /**\n * Register the dialog with the dialog service for programmatic access\n */\n protected register(scope) {\n // add scope along with name in the dialogRefsCollection Map while registering dialog\n // So that 2 dialogs having same name on different pages won't be overridden.\n this.dialogService.register(this.name, this, scope);\n }\n\n /**\n * De Register the dialog with the dialog service after dialog destruction\n */\n protected deRegister(scope) {\n this.dialogService.deRegister(this.name, scope);\n }\n\n /**\n * subclasses of BaseDialog must implement this method to return the proper template element ref\n * bsModal will use this refence to open the dialog\n * @returns {TemplateRef<any>}\n */\n protected abstract getTemplateRef(): TemplateRef<any>;\n\n protected onPropertyChange(key: string, nv: any, ov?: any) {\n // ignore the class attribute.\n // Prevent the framework from setting the class on the host element.\n if (key === 'class' || key === 'name' || key === 'tabindex') {\n return;\n } else if (key === 'animation') {\n this.modalOptions.class = this.modalOptions.class.replace(' animated ' + ov, '');\n if (nv) {\n this.modalOptions.class = this.modalOptions.class + ' animated ' + nv;\n }\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n public ngOnDestroy() {\n this.close();\n this.deRegister(this.viewParent);\n super.ngOnDestroy();\n }\n}\n","import { Component, ElementRef, Inject, Input } from '@angular/core';\n\nimport { addClass, toBoolean } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\nimport { BaseDialog } from '../base-dialog';\n\nconst DEFAULT_CLS = 'app-dialog-header modal-header';\nconst DEFAULT_ICON_DIMENSIONS = '21px';\n\n@Component({\n selector: 'div[wmDialogHeader]',\n templateUrl: './dialog-header.component.html'\n})\nexport class DialogHeaderComponent {\n\n @Input() public iconwidth = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconheight = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconmargin: string;\n @Input() public iconclass: string;\n @Input() public iconurl: string;\n @Input() public closable = true;\n @Input() public heading: string;\n @Input() public subheading: string;\n @Input() public titleid:string;\n\n public get isClosable() {\n return toBoolean(this.closable);\n }\n\n constructor(elRef: ElementRef, @Inject(DialogRef) private dialogRef: BaseDialog) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n }\n\n public closeDialog() {\n this.dialogRef.close();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ModalModule } from 'ngx-bootstrap/modal';\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { DialogBodyDirective } from './dialog-body/dialog-body.directive';\nimport { DialogFooterDirective } from './dialog-footer/dialog-footer.directive';\nimport { DialogHeaderComponent } from './dialog-header/dialog-header.component';\n\nconst components = [\n DialogBodyDirective,\n DialogFooterDirective,\n DialogHeaderComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n ModalModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components],\n entryComponents: []\n})\nexport class DialogModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {registerProps as ɵa} from './dialog-footer/dialog-footer.props';"],"names":["DEFAULT_CLS"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../projects/components/widgets/dialogs/default/src/dialog-body/dialog-body.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.props.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/base-dialog.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-header/dialog-header.component.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog.module.ts","../../../../../projects/components/widgets/dialogs/default/src/index.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, Inject, Renderer2 } from '@angular/core';\n\nimport { BsModalService } from 'ngx-bootstrap/modal';\n\nimport { addClass, setAttr, setCSS } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\n\ndeclare const $;\n\nconst DEFAULT_CLS = 'app-dialog-body modal-body';\n\n@Directive({\n selector: 'div[wmDialogBody]',\n})\nexport class DialogBodyDirective {\n @HostBinding('style.height') height;\n constructor(\n elRef: ElementRef,\n @Inject(DialogRef) private dialogRef,\n bsModal: BsModalService,\n private renderer: Renderer2\n ) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n\n const subscription = bsModal.onShown.subscribe(() => {\n const dialogRoot = $(elRef.nativeElement).closest('.app-dialog')[0];\n let dialogRootContainer = $('body.wm-app')[0];\n // To identify the microfrontend, if body tag doesn't have wm-app class then app loading as micro-frontend\n if(!dialogRootContainer) {\n const dialogBackrop = $('body > .modal-backdrop')[0];\n const parentContainer = $('body > modal-container')[0];\n dialogRootContainer = $('.wm-app')[0];\n if(dialogRootContainer && parentContainer ){\n if(dialogBackrop){\n this.renderer.appendChild(dialogRootContainer, dialogBackrop);\n }\n this.renderer.appendChild(dialogRootContainer, parentContainer);\n \n }\n }\n const width = this.dialogRef.width;\n const height = this.dialogRef.height;\n if(height){\n setTimeout(e=>{\n setCSS($(elRef.nativeElement)[0], 'height', height);\n });\n } \n if (dialogRoot) {\n if (width) {\n setCSS(dialogRoot, 'width', width);\n }\n setAttr(dialogRoot, 'tabindex', this.dialogRef.tabindex);\n setAttr(dialogRoot, 'name', this.dialogRef.name);\n\n }\n subscription.unsubscribe();\n });\n }\n}\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-dialogfooter',\n new Map([\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ])\n );\n};\n","import { Directive, Injector } from '@angular/core';\n\nimport { BaseComponent, IWidgetConfig, provideAsWidgetRef } from '@wm/components/base';\nimport { registerProps } from './dialog-footer.props';\n\nconst WIDGET_INFO: IWidgetConfig = {\n widgetType: 'wm-dialogfooter',\n hostClass: 'app-dialog-footer modal-footer'\n};\n\n@Directive({\n selector: 'div[wmDialogFooter]',\n providers: [\n provideAsWidgetRef(DialogFooterDirective)\n ]\n})\nexport class DialogFooterDirective extends BaseComponent {\n static initializeProps = registerProps();\n\n constructor(inj: Injector) {\n super(inj, WIDGET_INFO);\n }\n}\n","import { Injector, OnDestroy, TemplateRef, Injectable } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { BsModalRef, BsModalService, ModalOptions } from 'ngx-bootstrap/modal';\n\nimport { Subscription } from 'rxjs';\n\nimport {AbstractDialogService, closePopover, findRootContainer, generateGUId, isMobile, isMobileApp} from '@wm/core';\n\nimport { BaseComponent, IDialog, IWidgetConfig } from '@wm/components/base';\nimport { createFocusTrap } from '@wavemaker/focus-trap/dist/focus-trap';\ndeclare const _;\n\nlet eventsRegistered = false;\n\nlet focusTrapObj = {\n activeElement: null\n};\n\nconst invokeOpenedCallback = (ref) => {\n if (ref) {\n setTimeout(() => {\n const root = findRootContainer(ref.$element);\n // if page styles have to be applied to dialog then dialog has to be child of page element.\n if (root) {\n $('body > modal-container > div').wrap('<' + root + '/>');\n }\n ref.invokeEventCallback('opened', {$event: {type: 'opened'}});\n // focusTrapObj will create focus trap for the respective dialog according to the titleId assigned to them which is unique.\n const container = $('[aria-labelledby= ' + ref.titleId + ']')[0];\n\n const keyboardFocusableElements = [container.querySelectorAll(\n 'a, button, input, textarea, select, details, iframe, embed, object, summary dialog, audio[controls], video[controls], [contenteditable], [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => {\n return (\n !el[0].hasAttribute('disabled') && !el[0].hasAttribute('hidden'))\n })[0];\n\n $(keyboardFocusableElements[0]).focus();\n\n focusTrapObj[ref.titleId] = createFocusTrap(container, {\n onActivate: () => container.classList.add('is-active'),\n onDeactivate: () => container.classList.remove('is-active'),\n allowOutsideClick: true,\n setReturnFocus: focusTrapObj.activeElement,\n });\n focusTrapObj[ref.titleId].activate();\n });\n }\n};\n\nconst invokeClosedCallback = (ref) => {\n if (ref) {\n ref.invokeEventCallback('close');\n ref.dialogRef = undefined;\n }\n};\n\n@Injectable()\nexport abstract class BaseDialog extends BaseComponent implements IDialog, OnDestroy {\n\n public name: string;\n\n private readonly dialogService: AbstractDialogService;\n private readonly bsModal: BsModalService;\n\n private dialogRef: BsModalRef;\n private dialogId: number;\n public titleId:string = 'wmdialog-' + generateGUId();\n\n protected constructor(\n inj: Injector,\n widgetConfig: IWidgetConfig,\n protected modalOptions: ModalOptions\n ) {\n super(inj, widgetConfig);\n this.dialogService = inj.get(AbstractDialogService);\n this.bsModal = inj.get(BsModalService);\n const router = inj.get(Router);\n\n const subscriptions: Subscription[] = [\n this.bsModal.onShown.subscribe(({id}) => {\n const ref = this.dialogService.getLastOpenedDialog();\n if (ref === this && !this.dialogId) {\n // Always get the reference of last pushed dialog in the array for calling onOpen callback\n invokeOpenedCallback(ref);\n this.dialogId = id;\n }\n }),\n this.bsModal.onShow.subscribe(() => {\n focusTrapObj.activeElement = document.activeElement;\n }),\n this.bsModal.onHidden.subscribe((closeReason) => {\n let ref = this.dialogService.getDialogRefFromClosedDialogs();\n if (this.dialogId && closeReason?.id === this.dialogId) {\n ref = this;\n } else if (closeReason === 'esc' || closeReason === 'backdrop-click') {\n ref = this.dialogService.getLastOpenedDialog();\n }\n if (ref === this) {\n this.dialogId = null;\n // remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(ref);\n this.dialogService.removeFromClosedDialogs(ref);\n invokeClosedCallback(ref);\n if (ref.closeCallBackFn) {\n ref.closeCallBackFn();\n }\n }\n }),\n this.bsModal.onHide.subscribe(() => {\n // Will de-activate focus trap for the respective dialog when they are closed.\n const ref = this.dialogService.getDialogRefFromClosedDialogs();\n if (ref && focusTrapObj[ref.titleId] !== undefined) {\n focusTrapObj[ref.titleId].deactivate();\n }\n }),\n router.events.subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.close();\n }\n })\n ];\n this.registerDestroyListener(() => {// remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(this);\n this.dialogService.removeFromClosedDialogs(this);\n subscriptions.forEach(s => s.unsubscribe());\n });\n }\n\n /**\n * Opens the dialog\n * Subscribe to the onShown event emitter of bsModal and trigger on-opened event callback\n */\n public open(initState?: any) {\n\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n\n // do not open the dialog again if it is already opened\n const duplicateDialogCheck = (openedDialog) => {\n return openedDialog === this;\n };\n\n if (this.dialogService.getOpenedDialogs().some(duplicateDialogCheck)) {\n return;\n }\n\n this.dialogService.addToOpenedDialogs(this);\n\n // extend the context with the initState\n Object.assign(this.context, initState);\n this.modalOptions.ariaLabelledBy = this.titleId;\n this.dialogRef = this.bsModal.show(this.getTemplateRef(), this.modalOptions);\n // Fix for [WMS-23948]: Focus moving out of active Dialog widget\n if (this.dialogService.getOpenedDialogs().length === 1 && (isMobile() || isMobileApp())) {\n const parentSelector = $('body > app-root')[0];\n parentSelector.setAttribute('aria-hidden', 'true');\n }\n }\n\n /**\n * closes the dialog\n * invokes the on-close event callback\n */\n public close() {\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n if (this.dialogRef) {\n this.dialogService.addToClosedDialogs(this);\n this.dialogRef.hide();\n }\n }\n\n /**\n * Register the dialog with the dialog service for programmatic access\n */\n protected register(scope) {\n // add scope along with name in the dialogRefsCollection Map while registering dialog\n // So that 2 dialogs having same name on different pages won't be overridden.\n this.dialogService.register(this.name, this, scope);\n }\n\n /**\n * De Register the dialog with the dialog service after dialog destruction\n */\n protected deRegister(scope) {\n this.dialogService.deRegister(this.name, scope);\n }\n\n /**\n * subclasses of BaseDialog must implement this method to return the proper template element ref\n * bsModal will use this refence to open the dialog\n * @returns {TemplateRef<any>}\n */\n protected abstract getTemplateRef(): TemplateRef<any>;\n\n protected onPropertyChange(key: string, nv: any, ov?: any) {\n // ignore the class attribute.\n // Prevent the framework from setting the class on the host element.\n if (key === 'class' || key === 'name' || key === 'tabindex') {\n return;\n } else if (key === 'animation') {\n this.modalOptions.class = this.modalOptions.class.replace(' animated ' + ov, '');\n if (nv) {\n this.modalOptions.class = this.modalOptions.class + ' animated ' + nv;\n }\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n public ngOnDestroy() {\n this.close();\n this.deRegister(this.viewParent);\n super.ngOnDestroy();\n }\n}\n","import { Component, ElementRef, Inject, Input } from '@angular/core';\n\nimport { addClass, toBoolean } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\nimport { BaseDialog } from '../base-dialog';\n\nconst DEFAULT_CLS = 'app-dialog-header modal-header';\nconst DEFAULT_ICON_DIMENSIONS = '21px';\n\n@Component({\n selector: 'div[wmDialogHeader]',\n templateUrl: './dialog-header.component.html'\n})\nexport class DialogHeaderComponent {\n\n @Input() public iconwidth = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconheight = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconmargin: string;\n @Input() public iconclass: string;\n @Input() public iconurl: string;\n @Input() public closable = true;\n @Input() public heading: string;\n @Input() public subheading: string;\n @Input() public titleid:string;\n\n public get isClosable() {\n return toBoolean(this.closable);\n }\n\n constructor(elRef: ElementRef, @Inject(DialogRef) private dialogRef: BaseDialog) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n }\n\n public closeDialog() {\n this.dialogRef.close();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ModalModule } from 'ngx-bootstrap/modal';\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { DialogBodyDirective } from './dialog-body/dialog-body.directive';\nimport { DialogFooterDirective } from './dialog-footer/dialog-footer.directive';\nimport { DialogHeaderComponent } from './dialog-header/dialog-header.component';\n\nconst components = [\n DialogBodyDirective,\n DialogFooterDirective,\n DialogHeaderComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n ModalModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components],\n entryComponents: []\n})\nexport class DialogModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {registerProps as ɵa} from './dialog-footer/dialog-footer.props';"],"names":["DEFAULT_CLS"],"mappings":"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"}
|