@kolektor/nucleus-material 0.0.8-pre.5676 → 0.0.9-pre.5874
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{esm2015/kolektor-nucleus-material.js → esm2020/kolektor-nucleus-material.mjs} +0 -0
- package/{esm2015/lib/dialog/dialog.component.js → esm2020/lib/dialog/dialog.component.mjs} +5 -10
- package/{esm2015/lib/dialog/dialog.module.js → esm2020/lib/dialog/dialog.module.mjs} +4 -4
- package/esm2020/lib/dialog/dialog.service.mjs +40 -0
- package/{esm2015/lib/dialog/models.js → esm2020/lib/dialog/models.mjs} +0 -0
- package/esm2020/lib/loaded-content/loaded-content-component.mjs +71 -0
- package/{esm2015/lib/loaded-content/loaded-content-directive.js → esm2020/lib/loaded-content/loaded-content-directive.mjs} +3 -3
- package/{esm2015/lib/loaded-content/loaded-content-module.js → esm2020/lib/loaded-content/loaded-content-module.mjs} +4 -4
- package/{esm2015/lib/loaded-content/loading-state.js → esm2020/lib/loaded-content/loading-state.mjs} +4 -4
- package/{esm2015/lib/native-styling/models.js → esm2020/lib/native-styling/models.mjs} +0 -0
- package/{esm2015/lib/native-styling/native-styling.service.js → esm2020/lib/native-styling/native-styling.service.mjs} +3 -3
- package/{esm2015/lib/snackbar/models.js → esm2020/lib/snackbar/models.mjs} +0 -0
- package/{esm2015/lib/snackbar/snackbar.module.js → esm2020/lib/snackbar/snackbar.module.mjs} +4 -4
- package/{esm2015/lib/snackbar/snackbar.service.js → esm2020/lib/snackbar/snackbar.service.mjs} +3 -3
- package/{esm2015/lib/swipe-tabs/swipe-tabs-directive.js → esm2020/lib/swipe-tabs/swipe-tabs-directive.mjs} +3 -3
- package/{esm2015/lib/swipe-tabs/swipe-tabs-module.js → esm2020/lib/swipe-tabs/swipe-tabs-module.mjs} +4 -4
- package/esm2020/lib/user-avatar/user-avatar-component.mjs +50 -0
- package/{esm2015/lib/user-avatar/user-avatar-module.js → esm2020/lib/user-avatar/user-avatar-module.mjs} +4 -4
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/fesm2015/{kolektor-nucleus-material.js → kolektor-nucleus-material.mjs} +55 -69
- package/fesm2015/kolektor-nucleus-material.mjs.map +1 -0
- package/fesm2020/kolektor-nucleus-material.mjs +663 -0
- package/fesm2020/kolektor-nucleus-material.mjs.map +1 -0
- package/package.json +22 -9
- package/bundles/kolektor-nucleus-material.umd.js +0 -1135
- package/bundles/kolektor-nucleus-material.umd.js.map +0 -1
- package/esm2015/lib/dialog/dialog.service.js +0 -43
- package/esm2015/lib/loaded-content/loaded-content-component.js +0 -76
- package/esm2015/lib/user-avatar/user-avatar-component.js +0 -55
- package/fesm2015/kolektor-nucleus-material.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kolektor-nucleus-material.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/nucleus-material/src/lib/dialog/dialog.component.ts","../../../projects/nucleus-material/src/lib/dialog/dialog.component.html","../../../projects/nucleus-material/src/lib/dialog/dialog.service.ts","../../../projects/nucleus-material/src/lib/dialog/dialog.module.ts","../../../projects/nucleus-material/src/lib/dialog/models.ts","../../../projects/nucleus-material/src/lib/loaded-content/loading-state.ts","../../../projects/nucleus-material/src/lib/loaded-content/loaded-content-component.ts","../../../projects/nucleus-material/src/lib/loaded-content/loaded-content-component.html","../../../projects/nucleus-material/src/lib/loaded-content/loaded-content-directive.ts","../../../projects/nucleus-material/src/lib/loaded-content/loaded-content-module.ts","../../../projects/nucleus-material/src/lib/native-styling/native-styling.service.ts","../../../projects/nucleus-material/src/lib/native-styling/models.ts","../../../projects/nucleus-material/src/lib/swipe-tabs/swipe-tabs-directive.ts","../../../projects/nucleus-material/src/lib/swipe-tabs/swipe-tabs-module.ts","../../../projects/nucleus-material/src/lib/snackbar/snackbar.service.ts","../../../projects/nucleus-material/src/lib/snackbar/snackbar.module.ts","../../../projects/nucleus-material/src/lib/snackbar/models.ts","../../../projects/nucleus-material/src/lib/user-avatar/user-avatar-component.ts","../../../projects/nucleus-material/src/lib/user-avatar/user-avatar-component.html","../../../projects/nucleus-material/src/lib/user-avatar/user-avatar-module.ts","../../../projects/nucleus-material/src/public-api.ts","../../../projects/nucleus-material/src/kolektor-nucleus-material.ts"],"sourcesContent":["/*! *****************************************************************************\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 { Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { NucDialogData } from './models';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nuc-dialog',\r\n templateUrl: './dialog.component.html',\r\n styleUrls: ['./dialog.component.scss']\r\n})\r\n\r\nexport class NucDialogComponent {\r\n constructor(\r\n public dialogRef: MatDialogRef<NucDialogComponent>,\r\n @Inject(MAT_DIALOG_DATA) public dialogData: NucDialogData\r\n ) { }\r\n}\r\n","<ng-container *ngIf=\"dialogData\">\r\n <h2 mat-dialog-title *ngIf=\"dialogData.title\">\r\n {{dialogData.title}}\r\n </h2>\r\n <mat-dialog-content>{{dialogData.message}}</mat-dialog-content>\r\n <mat-dialog-actions>\r\n <ng-container *ngFor=\"let action of dialogData.actions\">\r\n <button color=\"{{action.color || 'primary'}}\" *ngIf=\"action.value === undefined\" mat-button mat-dialog-close>{{action.text}}</button>\r\n <button color=\"{{action.color || 'primary'}}\" *ngIf=\"action.value !== undefined\" mat-button [mat-dialog-close]=\"action.value\">{{action.text}}</button>\r\n </ng-container>\r\n </mat-dialog-actions>\r\n</ng-container>\r\n","import { Injectable } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { NucDialogData } from './models';\r\nimport { NucDialogComponent } from './dialog.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NucDialogService {\r\n constructor(private _matDialog: MatDialog) { }\r\n\r\n /**\r\n * Opens a NucDialog with content from dialogData.\r\n *\r\n * @param dialogData NucDialogData containing title, message and possible actions.\r\n * @param dialogConfig Extra configuration options. Data property is ignored, since it will be set to dialogData.\r\n * @returns a promise with value that was specified inside pressed Nucleus action.\r\n */\r\n public async open(dialogData: NucDialogData, dialogConfig?: MatDialogConfig): Promise<any> {\r\n if (dialogData.actions && dialogData.actions.length > 0) {\r\n if (dialogConfig) {\r\n dialogConfig.data = dialogData;\r\n } else {\r\n dialogConfig = { data: dialogData };\r\n }\r\n return await this._matDialog.open(NucDialogComponent, dialogConfig).beforeClosed().toPromise();\r\n } else {\r\n console.error('Nucleus.AppCore: NucDialogData requires at least one action.');\r\n }\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { NucDialogComponent } from './dialog.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n NucDialogComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatDialogModule,\r\n MatButtonModule\r\n ],\r\n entryComponents: [\r\n NucDialogComponent\r\n ]\r\n})\r\n\r\nexport class NucDialogModule { }\r\n","export interface NucDialogData {\r\n /** Optional title for the dialog. */\r\n title?: string;\r\n /** Message for the dialog. */\r\n message: string;\r\n /** Action(s) (buttons) for the dialog. At least one is required. */\r\n actions: NucAction[];\r\n}\r\n\r\nexport interface NucAction {\r\n /** Text for the action (button). */\r\n text: string;\r\n /** Return value for the action (button). */\r\n value?: any;\r\n /** Optional color of the action (button). */\r\n color?: NucColor;\r\n}\r\n\r\nexport enum NucColor {\r\n /** Primary color of the theme. */\r\n primary = 'primary',\r\n /** Accent color of the theme. */\r\n accent = 'accent',\r\n /** Warning color of the theme. */\r\n warn = 'warn'\r\n}\r\n","import { Observable, Subscription } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nexport enum LoadingStatus { completed, inProgress, failed, undefined }\r\n\r\nexport class LoadingState {\r\n private _status: LoadingStatus = LoadingStatus.undefined;\r\n private _message: string = null;\r\n private _errorDetails: string = null;\r\n private _resultFunction: (result: any) => void;\r\n private _errorFunction: (error: HttpErrorResponse) => void;\r\n private _completeFunction: () => void;\r\n private _loadObservable: Observable<any>;\r\n private _lastSubscription: Subscription = null;\r\n\r\n get status(): LoadingStatus {\r\n return this._status;\r\n }\r\n\r\n get message(): string {\r\n return this._message;\r\n }\r\n\r\n get errorDetails(): string {\r\n return this._errorDetails;\r\n }\r\n\r\n public load<T>(\r\n observable: Observable<T>,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n return this._load(true, null, observable, resultFunction, errorFunction, completeFunction);\r\n }\r\n\r\n public loadWithMessage<T>(\r\n observable: Observable<T>,\r\n message: string,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n return this._load(true, message, observable, resultFunction, errorFunction, completeFunction);\r\n }\r\n\r\n public invoke<T>(\r\n observable: Observable<T>,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n return this._load(false, null, observable, resultFunction, errorFunction, completeFunction);\r\n }\r\n\r\n public invokeWithMessage<T>(\r\n observable: Observable<T>,\r\n message: string,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n return this._load(false, message, observable, resultFunction, errorFunction, completeFunction);\r\n }\r\n\r\n public retry() {\r\n if (this._lastSubscription) {\r\n this._lastSubscription.unsubscribe();\r\n }\r\n this.setInProgress();\r\n this._lastSubscription = this._loadObservable.subscribe(this._resultFunction, this._errorFunction, this._completeFunction);\r\n return this._lastSubscription;\r\n }\r\n\r\n public setInProgress(message: string = null) {\r\n this._status = LoadingStatus.inProgress;\r\n this._message = message;\r\n }\r\n\r\n public setCompleted() {\r\n this._status = LoadingStatus.completed;\r\n }\r\n\r\n public setFailed(message: string = null, error: string = null) {\r\n this._status = LoadingStatus.failed;\r\n this._message = message;\r\n this._errorDetails = error;\r\n }\r\n\r\n private _load<T>(\r\n saveAsLoadObservable: boolean,\r\n progressMessage: string,\r\n observable: Observable<T>,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n if (this._lastSubscription) {\r\n this._lastSubscription.unsubscribe();\r\n }\r\n\r\n this.setInProgress(progressMessage);\r\n const obs = observable.pipe(\r\n tap(\r\n () => {\r\n if (!saveAsLoadObservable && this.message) { // if message was used one time we clear it\r\n this._message = null;\r\n }\r\n this.setCompleted();\r\n },\r\n (err) => {\r\n this.setFailed(null, LoadingState.getErrorDetails(err));\r\n }\r\n )\r\n );\r\n\r\n if (saveAsLoadObservable) {\r\n this._loadObservable = obs;\r\n this._resultFunction = resultFunction;\r\n this._errorFunction = errorFunction;\r\n this._completeFunction = completeFunction;\r\n }\r\n\r\n this._lastSubscription = obs.subscribe(resultFunction, errorFunction, completeFunction);\r\n return this._lastSubscription;\r\n }\r\n\r\n public static getErrorDetails(error: any) {\r\n // this routine tries to get the best error details from:\r\n // - standard rfc7807 http error: https://datatracker.ietf.org/doc/html/rfc7807\r\n // - angular HttpError\r\n // - JS Error object\r\n\r\n const problem = error?.error;\r\n if (problem?.title && problem?.detail) {\r\n return `${problem.title}: ${problem.detail}`;\r\n } else {\r\n return problem?.title || problem?.detail || error.message || error;\r\n }\r\n }\r\n}\r\n","import { Component, Input, TemplateRef } from '@angular/core';\r\nimport { LoadingState, LoadingStatus } from './loading-state';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nuc-loaded-content-component',\r\n templateUrl: './loaded-content-component.html',\r\n styleUrls: ['./loaded-content-component.scss']\r\n})\r\nexport class NucLoadedContentComponent {\r\n\r\n private _errorDetailsVisible = false;\r\n\r\n @Input()\r\n completedTemplate: TemplateRef<any>;\r\n\r\n @Input()\r\n errorTemplate: TemplateRef<any>;\r\n\r\n @Input()\r\n inProgressTemplate: TemplateRef<any>;\r\n\r\n @Input()\r\n public state: LoadingState;\r\n\r\n @Input()\r\n public inProgressMessage: string;\r\n\r\n @Input()\r\n public errorMessage = 'We are having trouble loading the data.';\r\n\r\n @Input()\r\n public showRetry = true;\r\n\r\n public get message() {\r\n if (this.state.message != null) {\r\n return this.state.message;\r\n } else {\r\n if (this.state.status === LoadingStatus.failed) {\r\n return this.errorMessage;\r\n } else if (this.state.status === LoadingStatus.inProgress) {\r\n return this.inProgressMessage;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n public get showRetryButton() {\r\n return this.showRetry;\r\n }\r\n\r\n public get inProgress() {\r\n const inProgress = this.state.status === LoadingStatus.inProgress;\r\n if (inProgress) {\r\n this._errorDetailsVisible = false;\r\n }\r\n return inProgress;\r\n }\r\n\r\n public get failed() {\r\n return this.state.status === LoadingStatus.failed;\r\n }\r\n\r\n public get completed() {\r\n return this.state.status === LoadingStatus.completed;\r\n }\r\n\r\n public get errorDetailsVisible() {\r\n return this._errorDetailsVisible;\r\n }\r\n\r\n public showErrorDetails() {\r\n this._errorDetailsVisible = true;\r\n }\r\n}\r\n","<ng-container *ngIf=\"completed\">\r\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\r\n</ng-container>\r\n\r\n<div class=\"indicators-container\" *ngIf=\"inProgress || failed\">\r\n <ng-container *ngIf=\"inProgress\">\r\n <ng-container *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate: defaultInProgressTemplate\"></ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"failed\">\r\n <ng-container *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"></ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #defaultInProgressTemplate>\r\n <div class=\"spinner\">\r\n <mat-spinner [diameter]=\"45\"></mat-spinner>\r\n </div>\r\n <p>\r\n {{message}}\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #defaultErrorTemplate>\r\n <div>\r\n <p>\r\n {{message}}\r\n </p>\r\n\r\n <div *ngIf=\"state.errorDetails\">\r\n <button *ngIf=\"!errorDetailsVisible\" mat-button color=\"warn\" (click)=\"showErrorDetails()\">show details</button>\r\n\r\n <div *ngIf=\"errorDetailsVisible\" class=\"error-details mat-small\">\r\n <strong>details:</strong><br />\r\n <p>{{state.errorDetails}}</p>\r\n </div>\r\n </div>\r\n\r\n <p *ngIf=\"showRetryButton\">\r\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\r\n <mat-icon>refresh</mat-icon>\r\n </button>\r\n </p>\r\n\r\n </div>\r\n</ng-template>\r\n","import {\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n Directive,\r\n Input,\r\n TemplateRef,\r\n ViewContainerRef } from '@angular/core';\r\nimport { NucLoadedContentComponent } from './loaded-content-component';\r\nimport { LoadingState } from './loading-state';\r\n\r\n// eslint-disable-next-line @angular-eslint/directive-selector\r\n@Directive({ selector: '[nucLoadedContent]' })\r\nexport class NucLoadedContentDirective {\r\n\r\n private _state: LoadingState;\r\n private _completedTemplateRef: TemplateRef<any> | null = null;\r\n private _errorTemplateRef: TemplateRef<any> | null = null;\r\n private _inProgressTemplateRef: TemplateRef<any> | null = null;\r\n private _component: ComponentRef<NucLoadedContentComponent> = null;\r\n\r\n constructor(\r\n private _viewContainer: ViewContainerRef,\r\n private templateRef: TemplateRef<any>,\r\n private _componentResolver: ComponentFactoryResolver) {\r\n this._completedTemplateRef = templateRef;\r\n }\r\n\r\n @Input()\r\n set nucLoadedContent(state: LoadingState) {\r\n // add some error handling if state is null, etc.\r\n this._state = state;\r\n this._updateView();\r\n }\r\n\r\n // eslint-disable-next-line @angular-eslint/no-input-rename\r\n @Input('nucLoadedContentError')\r\n set errorTemplate(templateRef: TemplateRef<any> | null) {\r\n this._errorTemplateRef = templateRef;\r\n this._updateView();\r\n }\r\n\r\n // eslint-disable-next-line @angular-eslint/no-input-rename\r\n @Input('nucLoadedContentInProgress')\r\n set inProgressTemplate(templateRef: TemplateRef<any> | null) {\r\n this._inProgressTemplateRef = templateRef;\r\n this._updateView();\r\n }\r\n\r\n @Input('nucLoadedContentInProgressMessage')\r\n set inProgressMessage(inProgressMessage: string) {\r\n this._component.instance.inProgressMessage = inProgressMessage;\r\n }\r\n\r\n @Input('nucLoadedContentErrorMessage')\r\n set errorMessage(errorMessage: string) {\r\n this._component.instance.errorMessage = errorMessage;\r\n }\r\n\r\n @Input('nucLoadedContentShowRetry')\r\n set showRetry(showRetry: boolean) {\r\n this._component.instance.showRetry = showRetry;\r\n }\r\n\r\n private _updateView() {\r\n if (this._component == null) {\r\n const fac = this._componentResolver.resolveComponentFactory(NucLoadedContentComponent);\r\n this._component = this._viewContainer.createComponent(fac);\r\n }\r\n\r\n this._component.instance.state = this._state;\r\n this._component.instance.completedTemplate = this._completedTemplateRef;\r\n\r\n if (this._inProgressTemplateRef) {\r\n this._component.instance.inProgressTemplate = this._inProgressTemplateRef;\r\n }\r\n\r\n if (this._errorTemplateRef) {\r\n this._component.instance.errorTemplate = this._errorTemplateRef;\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { NucLoadedContentComponent } from './loaded-content-component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NucLoadedContentDirective } from './loaded-content-directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n NucLoadedContentDirective,\r\n NucLoadedContentComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatProgressSpinnerModule,\r\n MatButtonModule,\r\n MatIconModule\r\n ],\r\n exports: [\r\n NucLoadedContentDirective\r\n ],\r\n entryComponents: [\r\n NucLoadedContentComponent\r\n ]\r\n})\r\nexport class NucLoadedContentModule { }\r\n","/* eslint-disable no-undef */\r\n/// <reference path=\"../../../../../node_modules/@types/winrt-uwp/index.d.ts\" />\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { WindowsTitleBarSyle } from './models';\r\nimport { Router, NavigationEnd } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NativeStylingService {\r\n\r\n constructor(private router: Router) { }\r\n\r\n public styleWindowsTitleBar(style: WindowsTitleBarSyle) {\r\n\r\n if ((window as any).Windows) {\r\n const accentColor = this.convertColor(style.backgroundColor);\r\n const hoverColor = style.hoverBackgroundColor ? this.convertColor(style.hoverBackgroundColor) : this.makeDarker(accentColor);\r\n const foregroundColor = style.foreground === 'light' ? Windows.UI.Colors.white : Windows.UI.Colors.black;\r\n const titleColor = style.hideTitle ? accentColor : foregroundColor;\r\n\r\n const appView = Windows.UI.ViewManagement.ApplicationView.getForCurrentView();\r\n const titleBar = appView.titleBar;\r\n\r\n titleBar.foregroundColor = titleColor;\r\n titleBar.inactiveForegroundColor = titleColor;\r\n\r\n titleBar.buttonHoverBackgroundColor = hoverColor;\r\n titleBar.buttonBackgroundColor = accentColor;\r\n titleBar.buttonInactiveBackgroundColor = accentColor;\r\n\r\n titleBar.buttonHoverForegroundColor = foregroundColor;\r\n titleBar.buttonForegroundColor = foregroundColor;\r\n titleBar.buttonInactiveForegroundColor = foregroundColor;\r\n\r\n titleBar.backgroundColor = accentColor;\r\n titleBar.inactiveBackgroundColor = accentColor;\r\n\r\n if (style.hideBackButton) {\r\n this.hideBackButton();\r\n const subscription = this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd && event.id > 1) {\r\n this.hideBackButton();\r\n subscription.unsubscribe();\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n private hideBackButton() {\r\n const systemNavigation = Windows.UI.Core.SystemNavigationManager.getForCurrentView();\r\n systemNavigation.appViewBackButtonVisibility = Windows.UI.Core.AppViewBackButtonVisibility.collapsed;\r\n }\r\n\r\n private convertColor(colorStr: string): Windows.UI.Color {\r\n const regEx = new RegExp('^#([A-Fa-f0-9]{6})$');\r\n if (! regEx.test(colorStr)) {\r\n throw new Error('Color is not in the right format. Should be #RRGGBB.');\r\n }\r\n\r\n const r = parseInt(colorStr.substr(1, 2), 16);\r\n const g = parseInt(colorStr.substr(3, 2), 16);\r\n const b = parseInt(colorStr.substr(5, 2), 16);\r\n\r\n return Windows.UI.ColorHelper.fromArgb(255, r, g, b);\r\n }\r\n\r\n private makeDarker(color: Windows.UI.Color, factor = 0.80) {\r\n return Windows.UI.ColorHelper.fromArgb(color.a, color.r * factor, color.g * factor, color.b * factor);\r\n }\r\n}\r\n","export class WindowsTitleBarSyle {\r\n backgroundColor: string;\r\n hoverBackgroundColor?: string = null;\r\n foreground?: 'dark' | 'light' = 'dark';\r\n hideTitle ? = false;\r\n hideBackButton ?= false;\r\n}\r\n","import { Directive, ElementRef, OnInit } from '@angular/core';\r\nimport { MatTabGroup } from '@angular/material/tabs';\r\nimport * as Hammer from 'hammerjs';\r\n\r\n// eslint-disable-next-line @angular-eslint/directive-selector\r\n@Directive({ selector: '[nucSwipe]' })\r\n\r\nexport class NucSwipeTabsDirective implements OnInit {\r\n constructor(\r\n private element: ElementRef, // ElementRef<MatTabGroup> causes errors.\r\n private tabGroup: MatTabGroup) { }\r\n\r\n ngOnInit() {\r\n const hammerJs = new Hammer.Manager(this.element.nativeElement, {\r\n inputClass: Hammer.TouchInput\r\n });\r\n\r\n hammerJs.add(new Hammer.Pan({\r\n direction: Hammer.DIRECTION_HORIZONTAL,\r\n threshold: 30\r\n }));\r\n\r\n hammerJs.on('panleft panright', (event) => {\r\n if (event.isFinal) {\r\n // Check if any of the tabs are set to disabled\r\n const tabs = this.tabGroup._tabs.map(x => x.disabled);\r\n const anyTabDisabled = tabs.some(disabled => disabled);\r\n\r\n if (event.type === 'panleft' && event.direction === 2 && this.tabGroup.selectedIndex < (this.tabGroup._tabs.length - 1)) {\r\n // Go to next tab\r\n if (anyTabDisabled) {\r\n const tabsToRight = tabs.slice(this.tabGroup.selectedIndex + 1);\r\n this.tabGroup.selectedIndex += this.getOffset(tabsToRight);\r\n } else {\r\n this.tabGroup.selectedIndex++;\r\n }\r\n } else if (event.type === 'panright' && event.direction === 4 && this.tabGroup.selectedIndex > 0) {\r\n // Go to previous tab\r\n if (anyTabDisabled) {\r\n const tabsToLeft = tabs.slice().reverse().slice(-this.tabGroup.selectedIndex);\r\n this.tabGroup.selectedIndex -= this.getOffset(tabsToLeft);\r\n } else {\r\n this.tabGroup.selectedIndex--;\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n private getOffset(tabs: boolean[]) {\r\n // Find offset to the first enabled tab\r\n const offset = tabs.indexOf(tabs.find(disabled => !disabled)) + 1;\r\n return offset;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { NucSwipeTabsDirective } from './swipe-tabs-directive';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n declarations: [\r\n NucSwipeTabsDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n NucSwipeTabsDirective\r\n ]\r\n})\r\n\r\nexport class NucSwipeTabsModule {\r\n\r\n}\r\n","import { Injectable, NgZone } from '@angular/core';\r\nimport { MatSnackBar, MatSnackBarConfig, MatSnackBarRef, TextOnlySnackBar } from '@angular/material/snack-bar';\r\nimport { NucSnackbarType } from './models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class NucSnackbarService {\r\n\r\n constructor(private _matSnackBar: MatSnackBar, private _zone: NgZone) {\r\n\r\n }\r\n\r\n public openSnackbar(type: NucSnackbarType, message: string, action: string | null, duration: number): MatSnackBarRef<TextOnlySnackBar> {\r\n let snackbarRef: MatSnackBarRef<TextOnlySnackBar>;\r\n\r\n this._zone.run(() => {\r\n snackbarRef = this._matSnackBar.open(message, action, {\r\n duration,\r\n panelClass: `${type}-snackbar`\r\n });\r\n });\r\n\r\n return snackbarRef;\r\n }\r\n\r\n\r\n public openSnackbarWithConfig(message: string, action: string | null, config: MatSnackBarConfig): MatSnackBarRef<TextOnlySnackBar> {\r\n let snackbarRef: MatSnackBarRef<TextOnlySnackBar>;\r\n\r\n this._zone.run(() => {\r\n snackbarRef = this._matSnackBar.open(message, action, config);\r\n });\r\n\r\n return snackbarRef;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\r\n\r\n@NgModule({\r\n declarations: [\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatSnackBarModule\r\n ],\r\n exports: [\r\n ]\r\n})\r\n\r\nexport class NucSnackbarModule {\r\n\r\n}\r\n","export enum NucSnackbarType {\r\n Info = 'info',\r\n Warning = 'warning',\r\n Danger = 'danger',\r\n Success = 'success'\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nexport type AvatarSize = 'small' | 'medium' | 'large' | 'xlarge';\r\nexport type Background = true | false;\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nuc-user-avatar',\r\n templateUrl: './user-avatar-component.html',\r\n styleUrls: ['./user-avatar-component.scss']\r\n})\r\n\r\nexport class NucUserAvatarComponent {\r\n\r\n @Input() name: string;\r\n @Input() image: string;\r\n @Input() size: AvatarSize = 'medium';\r\n @Input() background: Background = false;\r\n\r\n constructor() {\r\n }\r\n\r\n getUserInitials() {\r\n const nameParts = this.name.split(' ');\r\n return nameParts[0].charAt(0).toUpperCase() + '' + nameParts[nameParts.length - 1].charAt(0).toUpperCase();\r\n }\r\n\r\n getHslString(): string {\r\n if (!this.background) {\r\n return `hsl(${0},${0}%,${100}%)`;\r\n }\r\n\r\n\r\n let hash = 0;\r\n for (let i = 0; i < this.name.length; i++) {\r\n /*\r\n * Javascript uses double precision floating-point format for all numerical datatypes.\r\n * Except when using bitwise operations, where operators are converted to 32-bit signed integers.\r\n * Result of bitwise operations are then converted back to double precision floating-point format.\r\n *\r\n * We make a bitwise OR operation between the new hash and 0.\r\n * This keeps only the lower 32 bits in the new hash value.\r\n */\r\n // eslint-disable-next-line no-bitwise\r\n hash = (this.name.charCodeAt(i) + ((hash << 15) - hash)) | 0;\r\n }\r\n\r\n const hue = Math.abs(hash % 360);\r\n\r\n const lightness = 49.2;\r\n const saturation = 42.6;\r\n\r\n return `hsl(${hue},${saturation}%,${lightness}%)`;\r\n }\r\n}\r\n","<ng-container *ngIf=\"image\">\r\n <div class=\"user-avatar size-{{size}}\">\r\n <img src=\"{{image}}\" />\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"!image\">\r\n <div class=\"user-avatar size-{{size}} unselectable\" [style.background-color]=\"getHslString()\" [ngClass]=\"{'white-text': background, 'black-text border': !background}\">\r\n {{getUserInitials()}}\r\n </div>\r\n</ng-container>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NucUserAvatarComponent } from './user-avatar-component';\r\n\r\n@NgModule({\r\n declarations: [\r\n NucUserAvatarComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n NucUserAvatarComponent\r\n ]\r\n})\r\n\r\nexport class NucUserAvatarModule {\r\n\r\n}\r\n","/*\r\n * Public API Surface of nucleus-material\r\n */\r\n\r\n// dialog\r\nexport * from './lib/dialog/dialog.service';\r\nexport * from './lib/dialog/dialog.module';\r\nexport * from './lib/dialog/models';\r\n\r\n// loaded-content\r\nexport * from './lib/loaded-content/loading-state';\r\nexport * from './lib/loaded-content/loaded-content-component';\r\nexport * from './lib/loaded-content/loaded-content-directive';\r\nexport * from './lib/loaded-content/loaded-content-module';\r\n\r\n// native-styling\r\nexport * from './lib/native-styling/native-styling.service';\r\nexport * from './lib/native-styling/models';\r\n\r\n// swipe-tabs\r\nexport * from './lib/swipe-tabs/swipe-tabs-directive';\r\nexport * from './lib/swipe-tabs/swipe-tabs-module';\r\n\r\n// dialog component\r\nexport * from './lib/dialog/dialog.service';\r\nexport * from './lib/dialog/dialog.module';\r\nexport * from './lib/dialog/models';\r\n\r\n// snackbar component\r\nexport * from './lib/snackbar/snackbar.service';\r\nexport * from './lib/snackbar/snackbar.module';\r\nexport * from './lib/snackbar/models';\r\n\r\n// user-avatar\r\nexport * from './lib/user-avatar/user-avatar-component';\r\nexport * from './lib/user-avatar/user-avatar-module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["MAT_DIALOG_DATA","Component","Inject","Injectable","CommonModule","MatDialogModule","MatButtonModule","NgModule","NucColor","LoadingStatus","tap","Input","Directive","MatProgressSpinnerModule","MatIconModule","NavigationEnd","Hammer","MatSnackBarModule","NucSnackbarType"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAA;;;;;;;;;;;;;;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;;ICnOA;QACE,4BACS,SAA2C,EAClB,UAAyB;YADlD,cAAS,GAAT,SAAS,CAAkC;YAClB,eAAU,GAAV,UAAU,CAAe;SACtD;;;yIAJM,kBAAkB,yDAGnBA,kBAAe;kHAHd,kBAAkB,6DCX/B,qqBAYA;qHDDa,kBAAkB;sBAP9BC,YAAS;uBAAC;;wBAET,QAAQ,EAAE,YAAY;wBACtB,WAAW,EAAE,yBAAyB;wBACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;qBACvC;;;kCAKIC,SAAM;mCAACF,kBAAe;;;;;QELzB,0BAAoB,UAAqB;YAArB,eAAU,GAAV,UAAU,CAAW;SAAK;;;;;;;;QASjC,+BAAI,GAAJ,UAAK,UAAyB,EAAE,YAA8B;;;;;kCACrE,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA,EAAnD,wBAAmD;4BACrD,IAAI,YAAY,EAAE;gCAChB,YAAY,CAAC,IAAI,GAAG,UAAU,CAAC;6BAChC;iCAAM;gCACL,YAAY,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;6BACrC;4BACM,qBAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,EAAA;gCAA9F,sBAAO,SAAuF,EAAC;;4BAE/F,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;;;;;aAEjF;SAAA;;;uIArBU,gBAAgB;2IAAhB,gBAAgB,cAFf,MAAM;qHAEP,gBAAgB;sBAH5BG,aAAU;uBAAC;wBACV,UAAU,EAAE,MAAM;qBACnB;;;;QCaD;;;;sIAAa,eAAe;uIAAf,eAAe,iBAZxB,kBAAkB,aAGlBC,eAAY;YACZC,kBAAe;YACfC,kBAAe;uIAON,eAAe,YAVjB;gBACPF,eAAY;gBACZC,kBAAe;gBACfC,kBAAe;aAChB;qHAMU,eAAe;sBAd3BC,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,kBAAkB;yBACnB;wBACD,OAAO,EAAE;4BACPH,eAAY;4BACZC,kBAAe;4BACfC,kBAAe;yBAChB;wBACD,eAAe,EAAE;4BACf,kBAAkB;yBACnB;qBACF;;;ACAWE;IAAZ,WAAY,QAAQ;;QAElB,+BAAmB,CAAA;;QAEnB,6BAAiB,CAAA;;QAEjB,yBAAa,CAAA;IACf,CAAC,EAPWA,gBAAQ,KAARA,gBAAQ;;ACdRC;IAAZ,WAAY,aAAa;QAAG,2DAAS,CAAA;QAAE,6DAAU,CAAA;QAAE,qDAAM,CAAA;QAAE,2DAAS,CAAA;IAAC,CAAC,EAA1DA,qBAAa,KAAbA,qBAAa,QAA6C;;QAEtE;YACU,YAAO,GAAkBA,qBAAa,CAAC,SAAS,CAAC;YACjD,aAAQ,GAAW,IAAI,CAAC;YACxB,kBAAa,GAAW,IAAI,CAAC;YAK7B,sBAAiB,GAAiB,IAAI,CAAC;SA+HhD;QA7HC,sBAAI,gCAAM;iBAAV;gBACE,OAAO,IAAI,CAAC,OAAO,CAAC;aACrB;;;WAAA;QAED,sBAAI,iCAAO;iBAAX;gBACE,OAAO,IAAI,CAAC,QAAQ,CAAC;aACtB;;;WAAA;QAED,sBAAI,sCAAY;iBAAhB;gBACE,OAAO,IAAI,CAAC,aAAa,CAAC;aAC3B;;;WAAA;QAEM,2BAAI,GAAJ,UACH,UAAyB,EACzB,cAAoC,EACpC,aAAkD,EAClD,gBAA6B;YAE/B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;SAC5F;QAEM,sCAAe,GAAf,UACH,UAAyB,EACzB,OAAe,EACf,cAAoC,EACpC,aAAkD,EAClD,gBAA6B;YAE/B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;SAC/F;QAEM,6BAAM,GAAN,UACH,UAAyB,EACzB,cAAoC,EACpC,aAAkD,EAClD,gBAA6B;YAE/B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;SAC7F;QAEM,wCAAiB,GAAjB,UACH,UAAyB,EACzB,OAAe,EACf,cAAoC,EACpC,aAAkD,EAClD,gBAA6B;YAE/B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;SAChG;QAEM,4BAAK,GAAL;YACL,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC1B,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;aACtC;YACD,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC3H,OAAO,IAAI,CAAC,iBAAiB,CAAC;SAC/B;QAEM,oCAAa,GAAb,UAAc,OAAsB;YAAtB,wBAAA,EAAA,cAAsB;YACzC,IAAI,CAAC,OAAO,GAAGA,qBAAa,CAAC,UAAU,CAAC;YACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;SACzB;QAEM,mCAAY,GAAZ;YACL,IAAI,CAAC,OAAO,GAAGA,qBAAa,CAAC,SAAS,CAAC;SACxC;QAEM,gCAAS,GAAT,UAAU,OAAsB,EAAE,KAAoB;YAA5C,wBAAA,EAAA,cAAsB;YAAE,sBAAA,EAAA,YAAoB;YAC3D,IAAI,CAAC,OAAO,GAAGA,qBAAa,CAAC,MAAM,CAAC;YACpC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;SAC5B;QAEO,4BAAK,GAAL,UACJ,oBAA6B,EAC7B,eAAuB,EACvB,UAAyB,EACzB,cAAoC,EACpC,aAAkD,EAClD,gBAA6B;YANzB,iBAoCP;YA5BC,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC1B,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;aACtC;YAED,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;YACpC,IAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CACzBC,aAAG,CACD;gBACE,IAAI,CAAC,oBAAoB,IAAI,KAAI,CAAC,OAAO,EAAE;oBACzC,KAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;iBACtB;gBACD,KAAI,CAAC,YAAY,EAAE,CAAC;aACrB,EACD,UAAC,GAAG;gBACF,KAAI,CAAC,SAAS,CAAC,IAAI,EAAE,YAAY,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;aACzD,CACF,CACF,CAAC;YAEF,IAAI,oBAAoB,EAAE;gBACxB,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC;gBAC3B,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;gBACtC,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;gBACpC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;aAC3C;YAED,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;YACxF,OAAO,IAAI,CAAC,iBAAiB,CAAC;SAC/B;QAEa,4BAAe,GAAtB,UAAuB,KAAU;;;;;YAMtC,IAAM,OAAO,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC;YAC7B,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,MAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAA,EAAE;gBACrC,OAAU,OAAO,CAAC,KAAK,UAAK,OAAO,CAAC,MAAQ,CAAC;aAC9C;iBAAM;gBACL,OAAO,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,MAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAA,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC;aACpE;SACF;2BACF;KAAA;;;QC1ID;YAQU,yBAAoB,GAAG,KAAK,CAAC;YAkB9B,iBAAY,GAAG,yCAAyC,CAAC;YAGzD,cAAS,GAAG,IAAI,CAAC;SA0CzB;QAxCC,sBAAW,8CAAO;iBAAlB;gBACE,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE;oBAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;iBAC3B;qBAAM;oBACL,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAKD,qBAAa,CAAC,MAAM,EAAE;wBAC9C,OAAO,IAAI,CAAC,YAAY,CAAC;qBAC1B;yBAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAKA,qBAAa,CAAC,UAAU,EAAE;wBACzD,OAAO,IAAI,CAAC,iBAAiB,CAAC;qBAC/B;iBACF;gBACD,OAAO,IAAI,CAAC;aACb;;;WAAA;QAED,sBAAW,sDAAe;iBAA1B;gBACE,OAAO,IAAI,CAAC,SAAS,CAAC;aACvB;;;WAAA;QAED,sBAAW,iDAAU;iBAArB;gBACE,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,KAAKA,qBAAa,CAAC,UAAU,CAAC;gBAClE,IAAI,UAAU,EAAE;oBACd,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;iBACnC;gBACD,OAAO,UAAU,CAAC;aACnB;;;WAAA;QAED,sBAAW,6CAAM;iBAAjB;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAKA,qBAAa,CAAC,MAAM,CAAC;aACnD;;;WAAA;QAED,sBAAW,gDAAS;iBAApB;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAKA,qBAAa,CAAC,SAAS,CAAC;aACtD;;;WAAA;QAED,sBAAW,0DAAmB;iBAA9B;gBACE,OAAO,IAAI,CAAC,oBAAoB,CAAC;aAClC;;;WAAA;QAEM,oDAAgB,GAAhB;YACL,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;SAClC;;;gJAhEU,yBAAyB;yHAAzB,yBAAyB,2TCTtC,u7CA6CA;qHDpCa,yBAAyB;sBANrCR,YAAS;uBAAC;;wBAET,QAAQ,EAAE,8BAA8B;wBACxC,WAAW,EAAE,iCAAiC;wBAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;qBAC/C;kCAMC,iBAAiB;0BADhBU,QAAK;oBAIN,aAAa;0BADZA,QAAK;oBAIN,kBAAkB;0BADjBA,QAAK;oBAIC,KAAK;0BADXA,QAAK;oBAIC,iBAAiB;0BADvBA,QAAK;oBAIC,YAAY;0BADlBA,QAAK;oBAIC,SAAS;0BADfA,QAAK;;;IErBR;;QAUE,mCACU,cAAgC,EAChC,WAA6B,EAC7B,kBAA4C;YAF5C,mBAAc,GAAd,cAAc,CAAkB;YAChC,gBAAW,GAAX,WAAW,CAAkB;YAC7B,uBAAkB,GAAlB,kBAAkB,CAA0B;YAR9C,0BAAqB,GAA4B,IAAI,CAAC;YACtD,sBAAiB,GAA4B,IAAI,CAAC;YAClD,2BAAsB,GAA4B,IAAI,CAAC;YACvD,eAAU,GAA4C,IAAI,CAAC;YAMjE,IAAI,CAAC,qBAAqB,GAAG,WAAW,CAAC;SAC1C;QAED,sBACI,uDAAgB;iBADpB,UACqB,KAAmB;;gBAEtC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,WAAW,EAAE,CAAC;aACpB;;;WAAA;QAGD,sBACI,oDAAa;;iBADjB,UACkB,WAAoC;gBACpD,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC;gBACrC,IAAI,CAAC,WAAW,EAAE,CAAC;aACpB;;;WAAA;QAGD,sBACI,yDAAkB;;iBADtB,UACuB,WAAoC;gBACzD,IAAI,CAAC,sBAAsB,GAAG,WAAW,CAAC;gBAC1C,IAAI,CAAC,WAAW,EAAE,CAAC;aACpB;;;WAAA;QAED,sBACI,wDAAiB;iBADrB,UACsB,iBAAyB;gBAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;aAChE;;;WAAA;QAED,sBACI,mDAAY;iBADhB,UACiB,YAAoB;gBACnC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC;aACtD;;;WAAA;QAED,sBACI,gDAAS;iBADb,UACc,SAAkB;gBAC9B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;aAChD;;;WAAA;QAEO,+CAAW,GAAX;YACN,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE;gBAC3B,IAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,yBAAyB,CAAC,CAAC;gBACvF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;aAC5D;YAED,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC;YAExE,IAAI,IAAI,CAAC,sBAAsB,EAAE;gBAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,CAAC;aAC3E;YAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC1B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC;aACjE;SACF;;;gJAnEU,yBAAyB;yHAAzB,yBAAyB;qHAAzB,yBAAyB;sBADrCC,YAAS;uBAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE;6MAiBvC,gBAAgB;0BADnBD,QAAK;oBASF,aAAa;0BADhBA,QAAK;2BAAC,uBAAuB;oBAQ1B,kBAAkB;0BADrBA,QAAK;2BAAC,4BAA4B;oBAO/B,iBAAiB;0BADpBA,QAAK;2BAAC,mCAAmC;oBAMtC,YAAY;0BADfA,QAAK;2BAAC,8BAA8B;oBAMjC,SAAS;0BADZA,QAAK;2BAAC,2BAA2B;;;;QChCpC;;;;6IAAa,sBAAsB;8IAAtB,sBAAsB,iBAhB/B,yBAAyB;YACzB,yBAAyB,aAGzBP,eAAY;YACZS,6BAAwB;YACxBP,kBAAe;YACfQ,kBAAa,aAGb,yBAAyB;8IAMhB,sBAAsB,YAbxB;gBACPV,eAAY;gBACZS,6BAAwB;gBACxBP,kBAAe;gBACfQ,kBAAa;aACd;qHAQU,sBAAsB;sBAlBlCP,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,yBAAyB;4BACzB,yBAAyB;yBAC1B;wBACD,OAAO,EAAE;4BACPH,eAAY;4BACZS,6BAAwB;4BACxBP,kBAAe;4BACfQ,kBAAa;yBACd;wBACD,OAAO,EAAE;4BACP,yBAAyB;yBAC1B;wBACD,eAAe,EAAE;4BACf,yBAAyB;yBAC1B;qBACF;;;ICxBD;;QAWE,8BAAoB,MAAc;YAAd,WAAM,GAAN,MAAM,CAAQ;SAAK;QAEhC,mDAAoB,GAApB,UAAqB,KAA0B;YAA/C,iBAmCN;YAjCC,IAAK,MAAc,CAAC,OAAO,EAAE;gBAC3B,IAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAC7D,IAAM,UAAU,GAAG,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC7H,IAAM,eAAe,GAAG,KAAK,CAAC,UAAU,KAAK,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;gBACzG,IAAM,UAAU,GAAG,KAAK,CAAC,SAAS,GAAG,WAAW,GAAG,eAAe,CAAC;gBAEnE,IAAM,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;gBAC9E,IAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;gBAElC,QAAQ,CAAC,eAAe,GAAG,UAAU,CAAC;gBACtC,QAAQ,CAAC,uBAAuB,GAAG,UAAU,CAAC;gBAE9C,QAAQ,CAAC,0BAA0B,GAAG,UAAU,CAAC;gBACjD,QAAQ,CAAC,qBAAqB,GAAG,WAAW,CAAC;gBAC7C,QAAQ,CAAC,6BAA6B,GAAG,WAAW,CAAC;gBAErD,QAAQ,CAAC,0BAA0B,GAAG,eAAe,CAAC;gBACtD,QAAQ,CAAC,qBAAqB,GAAG,eAAe,CAAC;gBACjD,QAAQ,CAAC,6BAA6B,GAAG,eAAe,CAAC;gBAEzD,QAAQ,CAAC,eAAe,GAAG,WAAW,CAAC;gBACvC,QAAQ,CAAC,uBAAuB,GAAG,WAAW,CAAC;gBAE/C,IAAI,KAAK,CAAC,cAAc,EAAE;oBACxB,IAAI,CAAC,cAAc,EAAE,CAAC;oBACtB,IAAM,cAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,UAAC,KAAK;wBACtD,IAAI,KAAK,YAAYC,kBAAa,IAAI,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE;4BAClD,KAAI,CAAC,cAAc,EAAE,CAAC;4BACtB,cAAY,CAAC,WAAW,EAAE,CAAC;yBAC5B;qBACF,CAAC,CAAC;iBACJ;aACF;SACF;QAEO,6CAAc,GAAd;YACN,IAAM,gBAAgB,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,EAAE,CAAC;YACrF,gBAAgB,CAAC,2BAA2B,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,SAAS,CAAC;SACtG;QAEO,2CAAY,GAAZ,UAAa,QAAgB;YACnC,IAAM,KAAK,GAAG,IAAI,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAChD,IAAI,CAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;aACzE;YAED,IAAM,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9C,IAAM,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9C,IAAM,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAE9C,OAAO,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACtD;QAEO,yCAAU,GAAV,UAAW,KAAuB,EAAE,MAAa;YAAb,uBAAA,EAAA,aAAa;YACvD,OAAO,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;SACvG;;;2IA7DU,oBAAoB;+IAApB,oBAAoB,cAFnB,MAAM;qHAEP,oBAAoB;sBAHhCZ,aAAU;uBAAC;wBACV,UAAU,EAAE,MAAM;qBACnB;;;;QCTD;YAEE,yBAAoB,GAAY,IAAI,CAAC;YACrC,eAAU,GAAsB,MAAM,CAAC;YACvC,cAAS,GAAK,KAAK,CAAC;YACpB,mBAAc,GAAI,KAAK,CAAC;SACzB;kCAAA;KAAA;;ICFD;;QAIE,+BACU,OAAmB;QACnB,QAAqB;YADrB,YAAO,GAAP,OAAO,CAAY;YACnB,aAAQ,GAAR,QAAQ,CAAa;SAAK;QAEpC,wCAAQ,GAAR;YAAA,iBAmCC;YAlCC,IAAM,QAAQ,GAAG,IAAIa,iBAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;gBAC9D,UAAU,EAAEA,iBAAM,CAAC,UAAU;aAC9B,CAAC,CAAC;YAEH,QAAQ,CAAC,GAAG,CAAC,IAAIA,iBAAM,CAAC,GAAG,CAAC;gBAC1B,SAAS,EAAEA,iBAAM,CAAC,oBAAoB;gBACtC,SAAS,EAAE,EAAE;aACd,CAAC,CAAC,CAAC;YAEJ,QAAQ,CAAC,EAAE,CAAC,kBAAkB,EAAE,UAAC,KAAK;gBACpC,IAAI,KAAK,CAAC,OAAO,EAAE;;oBAEjB,IAAM,IAAI,GAAG,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,QAAQ,GAAA,CAAC,CAAC;oBACtD,IAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAA,QAAQ,IAAI,OAAA,QAAQ,GAAA,CAAC,CAAC;oBAEvD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;;wBAEvH,IAAI,cAAc,EAAE;4BAClB,IAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;4BAChE,KAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,KAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;yBAC5D;6BAAM;4BACL,KAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;yBAC/B;qBACF;yBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,CAAC,EAAE;;wBAEhG,IAAI,cAAc,EAAE;4BAClB,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,KAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;4BAC9E,KAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,KAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;yBAC3D;6BAAM;4BACL,KAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;yBAC/B;qBACF;iBACF;aACF,CAAC,CAAC;SACJ;QAEO,yCAAS,GAAT,UAAU,IAAe;;YAE/B,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAA,QAAQ,IAAI,OAAA,CAAC,QAAQ,GAAA,CAAC,CAAC,GAAG,CAAC,CAAC;YAClE,OAAO,MAAM,CAAC;SACf;;;4IA9CU,qBAAqB;qHAArB,qBAAqB;qHAArB,qBAAqB;sBAFjCJ,YAAS;uBAAC,EAAE,QAAQ,EAAE,YAAY,EAAE;;;;QCWrC;;;;yIAAa,kBAAkB;0IAAlB,kBAAkB,iBAV3B,qBAAqB,aAGrBR,eAAY,aAGZ,qBAAqB;0IAIZ,kBAAkB,YARpB;gBACPA,eAAY;aACb;qHAMU,kBAAkB;sBAZ9BG,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,qBAAqB;yBACtB;wBACD,OAAO,EAAE;4BACPH,eAAY;yBACb;wBACD,OAAO,EAAE;4BACP,qBAAqB;yBACtB;qBACF;;;;QCJC,4BAAoB,YAAyB,EAAU,KAAa;YAAhD,iBAAY,GAAZ,YAAY,CAAa;YAAU,UAAK,GAAL,KAAK,CAAQ;SAEnE;QAEM,yCAAY,GAAZ,UAAa,IAAqB,EAAE,OAAe,EAAE,MAAqB,EAAE,QAAgB;YAA5F,iBAWN;YAVC,IAAI,WAA6C,CAAC;YAElD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;gBACb,WAAW,GAAG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;oBACpD,QAAQ,UAAA;oBACR,UAAU,EAAK,IAAI,cAAW;iBAC/B,CAAC,CAAC;aACJ,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC;SACpB;QAGM,mDAAsB,GAAtB,UAAuB,OAAe,EAAE,MAAqB,EAAE,MAAyB;YAAxF,iBAQN;YAPC,IAAI,WAA6C,CAAC;YAElD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;gBACb,WAAW,GAAG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;aAC/D,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC;SACpB;;;yIA5BU,kBAAkB;6IAAlB,kBAAkB,cAHjB,MAAM;qHAGP,kBAAkB;sBAJ9BD,aAAU;uBAAC;wBACV,UAAU,EAAE,MAAM;qBACnB;;;;QCSD;;;;wIAAa,iBAAiB;yIAAjB,iBAAiB,YAP1BC,eAAY;YACZa,sBAAiB;yIAMR,iBAAiB,YARnB;gBACPb,eAAY;gBACZa,sBAAiB;aAClB;qHAKU,iBAAiB;sBAX7BV,WAAQ;uBAAC;wBACR,YAAY,EAAE,EACb;wBACD,OAAO,EAAE;4BACPH,eAAY;4BACZa,sBAAiB;yBAClB;wBACD,OAAO,EAAE,EACR;qBACF;;;ACbWC;IAAZ,WAAY,eAAe;QACzB,gCAAa,CAAA;QACb,sCAAmB,CAAA;QACnB,oCAAiB,CAAA;QACjB,sCAAmB,CAAA;IACrB,CAAC,EALWA,uBAAe,KAAfA,uBAAe;;;QCkBzB;YAHS,SAAI,GAAe,QAAQ,CAAC;YAC5B,eAAU,GAAe,KAAK,CAAC;SAGvC;QAED,gDAAe,GAAf;YACE,IAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC5G;QAED,6CAAY,GAAZ;YACE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,OAAO,SAAO,CAAC,SAAI,CAAC,UAAK,GAAG,OAAI,CAAC;aAClC;YAGD,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;;;;;;;;;;gBAUzC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9D;YAED,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;YAEjC,IAAM,SAAS,GAAG,IAAI,CAAC;YACvB,IAAM,UAAU,GAAG,IAAI,CAAC;YAExB,OAAO,SAAO,GAAG,SAAI,UAAU,UAAK,SAAS,OAAI,CAAC;SACnD;;;6IAzCU,sBAAsB;sHAAtB,sBAAsB,oJCXnC,0aAWA;qHDAa,sBAAsB;sBAPlCjB,YAAS;uBAAC;;wBAET,QAAQ,EAAE,iBAAiB;wBAC3B,WAAW,EAAE,8BAA8B;wBAC3C,SAAS,EAAE,CAAC,8BAA8B,CAAC;qBAC5C;8EAIU,IAAI;0BAAZU,QAAK;oBACG,KAAK;0BAAbA,QAAK;oBACG,IAAI;0BAAZA,QAAK;oBACG,UAAU;0BAAlBA,QAAK;;;;QEAR;;;;0IAAa,mBAAmB;2IAAnB,mBAAmB,iBAV5B,sBAAsB,aAGtBP,eAAY,aAGZ,sBAAsB;2IAIb,mBAAmB,YARrB;gBACPA,eAAY;aACb;qHAMU,mBAAmB;sBAZ/BG,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,sBAAsB;yBACvB;wBACD,OAAO,EAAE;4BACPH,eAAY;yBACb;wBACD,OAAO,EAAE;4BACP,sBAAsB;yBACvB;qBACF;;;ICdD;;;;ICAA;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { MatDialog } from '@angular/material/dialog';
|
|
4
|
-
import { NucDialogComponent } from './dialog.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/material/dialog";
|
|
7
|
-
export class NucDialogService {
|
|
8
|
-
constructor(_matDialog) {
|
|
9
|
-
this._matDialog = _matDialog;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Opens a NucDialog with content from dialogData.
|
|
13
|
-
*
|
|
14
|
-
* @param dialogData NucDialogData containing title, message and possible actions.
|
|
15
|
-
* @param dialogConfig Extra configuration options. Data property is ignored, since it will be set to dialogData.
|
|
16
|
-
* @returns a promise with value that was specified inside pressed Nucleus action.
|
|
17
|
-
*/
|
|
18
|
-
open(dialogData, dialogConfig) {
|
|
19
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
-
if (dialogData.actions && dialogData.actions.length > 0) {
|
|
21
|
-
if (dialogConfig) {
|
|
22
|
-
dialogConfig.data = dialogData;
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
dialogConfig = { data: dialogData };
|
|
26
|
-
}
|
|
27
|
-
return yield this._matDialog.open(NucDialogComponent, dialogConfig).beforeClosed().toPromise();
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
console.error('Nucleus.AppCore: NucDialogData requires at least one action.');
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
NucDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.3", ngImport: i0, type: NucDialogService, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
36
|
-
NucDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.3", ngImport: i0, type: NucDialogService, providedIn: 'root' });
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.3", ngImport: i0, type: NucDialogService, decorators: [{
|
|
38
|
-
type: Injectable,
|
|
39
|
-
args: [{
|
|
40
|
-
providedIn: 'root'
|
|
41
|
-
}]
|
|
42
|
-
}], ctorParameters: function () { return [{ type: i1.MatDialog }]; } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udWNsZXVzLW1hdGVyaWFsL3NyYy9saWIvZGlhbG9nL2RpYWxvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQW1CLE1BQU0sMEJBQTBCLENBQUM7QUFFdEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQUt4RCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQW9CLFVBQXFCO1FBQXJCLGVBQVUsR0FBVixVQUFVLENBQVc7SUFBSSxDQUFDO0lBRTlDOzs7Ozs7T0FNRztJQUNVLElBQUksQ0FBQyxVQUF5QixFQUFFLFlBQThCOztZQUN6RSxJQUFJLFVBQVUsQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUN2RCxJQUFJLFlBQVksRUFBRTtvQkFDaEIsWUFBWSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7aUJBQ2hDO3FCQUFNO29CQUNMLFlBQVksR0FBRyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQztpQkFDckM7Z0JBQ0QsT0FBTyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFlBQVksQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQ2hHO2lCQUFNO2dCQUNMLE9BQU8sQ0FBQyxLQUFLLENBQUMsOERBQThELENBQUMsQ0FBQzthQUMvRTtRQUNILENBQUM7S0FBQTs7NkdBckJVLGdCQUFnQjtpSEFBaEIsZ0JBQWdCLGNBRmYsTUFBTTsyRkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ0NvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE51Y0RpYWxvZ0RhdGEgfSBmcm9tICcuL21vZGVscyc7XHJcbmltcG9ydCB7IE51Y0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vZGlhbG9nLmNvbXBvbmVudCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOdWNEaWFsb2dTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9tYXREaWFsb2c6IE1hdERpYWxvZykgeyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wZW5zIGEgTnVjRGlhbG9nIHdpdGggY29udGVudCBmcm9tIGRpYWxvZ0RhdGEuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZGlhbG9nRGF0YSBOdWNEaWFsb2dEYXRhIGNvbnRhaW5pbmcgdGl0bGUsIG1lc3NhZ2UgYW5kIHBvc3NpYmxlIGFjdGlvbnMuXHJcbiAgICogQHBhcmFtIGRpYWxvZ0NvbmZpZyBFeHRyYSBjb25maWd1cmF0aW9uIG9wdGlvbnMuIERhdGEgcHJvcGVydHkgaXMgaWdub3JlZCwgc2luY2UgaXQgd2lsbCBiZSBzZXQgdG8gZGlhbG9nRGF0YS5cclxuICAgKiBAcmV0dXJucyBhIHByb21pc2Ugd2l0aCB2YWx1ZSB0aGF0IHdhcyBzcGVjaWZpZWQgaW5zaWRlIHByZXNzZWQgTnVjbGV1cyBhY3Rpb24uXHJcbiAgICovXHJcbiAgcHVibGljIGFzeW5jIG9wZW4oZGlhbG9nRGF0YTogTnVjRGlhbG9nRGF0YSwgZGlhbG9nQ29uZmlnPzogTWF0RGlhbG9nQ29uZmlnKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIGlmIChkaWFsb2dEYXRhLmFjdGlvbnMgJiYgZGlhbG9nRGF0YS5hY3Rpb25zLmxlbmd0aCA+IDApIHtcclxuICAgICAgaWYgKGRpYWxvZ0NvbmZpZykge1xyXG4gICAgICAgIGRpYWxvZ0NvbmZpZy5kYXRhID0gZGlhbG9nRGF0YTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBkaWFsb2dDb25maWcgPSB7IGRhdGE6IGRpYWxvZ0RhdGEgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5fbWF0RGlhbG9nLm9wZW4oTnVjRGlhbG9nQ29tcG9uZW50LCBkaWFsb2dDb25maWcpLmJlZm9yZUNsb3NlZCgpLnRvUHJvbWlzZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc29sZS5lcnJvcignTnVjbGV1cy5BcHBDb3JlOiBOdWNEaWFsb2dEYXRhIHJlcXVpcmVzIGF0IGxlYXN0IG9uZSBhY3Rpb24uJyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
import { Component, Input, TemplateRef } from '@angular/core';
|
|
2
|
-
import { LoadingState, LoadingStatus } from './loading-state';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/material/progress-spinner";
|
|
5
|
-
import * as i2 from "@angular/material/button";
|
|
6
|
-
import * as i3 from "@angular/material/icon";
|
|
7
|
-
import * as i4 from "@angular/common";
|
|
8
|
-
export class NucLoadedContentComponent {
|
|
9
|
-
constructor() {
|
|
10
|
-
this._errorDetailsVisible = false;
|
|
11
|
-
this.errorMessage = 'We are having trouble loading the data.';
|
|
12
|
-
this.showRetry = true;
|
|
13
|
-
}
|
|
14
|
-
get message() {
|
|
15
|
-
if (this.state.message != null) {
|
|
16
|
-
return this.state.message;
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
if (this.state.status === LoadingStatus.failed) {
|
|
20
|
-
return this.errorMessage;
|
|
21
|
-
}
|
|
22
|
-
else if (this.state.status === LoadingStatus.inProgress) {
|
|
23
|
-
return this.inProgressMessage;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
return null;
|
|
27
|
-
}
|
|
28
|
-
get showRetryButton() {
|
|
29
|
-
return this.showRetry;
|
|
30
|
-
}
|
|
31
|
-
get inProgress() {
|
|
32
|
-
const inProgress = this.state.status === LoadingStatus.inProgress;
|
|
33
|
-
if (inProgress) {
|
|
34
|
-
this._errorDetailsVisible = false;
|
|
35
|
-
}
|
|
36
|
-
return inProgress;
|
|
37
|
-
}
|
|
38
|
-
get failed() {
|
|
39
|
-
return this.state.status === LoadingStatus.failed;
|
|
40
|
-
}
|
|
41
|
-
get completed() {
|
|
42
|
-
return this.state.status === LoadingStatus.completed;
|
|
43
|
-
}
|
|
44
|
-
get errorDetailsVisible() {
|
|
45
|
-
return this._errorDetailsVisible;
|
|
46
|
-
}
|
|
47
|
-
showErrorDetails() {
|
|
48
|
-
this._errorDetailsVisible = true;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
NucLoadedContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.3", ngImport: i0, type: NucLoadedContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
-
NucLoadedContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.3", type: NucLoadedContentComponent, selector: "nuc-loaded-content-component", inputs: { completedTemplate: "completedTemplate", errorTemplate: "errorTemplate", inProgressTemplate: "inProgressTemplate", state: "state", inProgressMessage: "inProgressMessage", errorMessage: "errorMessage", showRetry: "showRetry" }, ngImport: i0, template: "<ng-container *ngIf=\"completed\">\r\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\r\n</ng-container>\r\n\r\n<div class=\"indicators-container\" *ngIf=\"inProgress || failed\">\r\n <ng-container *ngIf=\"inProgress\">\r\n <ng-container *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate: defaultInProgressTemplate\"></ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"failed\">\r\n <ng-container *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"></ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #defaultInProgressTemplate>\r\n <div class=\"spinner\">\r\n <mat-spinner [diameter]=\"45\"></mat-spinner>\r\n </div>\r\n <p>\r\n {{message}}\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #defaultErrorTemplate>\r\n <div>\r\n <p>\r\n {{message}}\r\n </p>\r\n\r\n <div *ngIf=\"state.errorDetails\">\r\n <button *ngIf=\"!errorDetailsVisible\" mat-button color=\"warn\" (click)=\"showErrorDetails()\">show details</button>\r\n\r\n <div *ngIf=\"errorDetailsVisible\" class=\"error-details mat-small\">\r\n <strong>details:</strong><br />\r\n <p>{{state.errorDetails}}</p>\r\n </div>\r\n </div>\r\n\r\n <p *ngIf=\"showRetryButton\">\r\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\r\n <mat-icon>refresh</mat-icon>\r\n </button>\r\n </p>\r\n\r\n </div>\r\n</ng-template>\r\n", styles: [".indicators-container{text-align:center;margin:0 auto;padding-top:4rem}.error-details{margin-top:1rem}.spinner{display:flex;justify-content:center;align-items:center;margin-bottom:.5rem}\n"], components: [{ type: i1.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.3", ngImport: i0, type: NucLoadedContentComponent, decorators: [{
|
|
54
|
-
type: Component,
|
|
55
|
-
args: [{
|
|
56
|
-
// eslint-disable-next-line @angular-eslint/component-selector
|
|
57
|
-
selector: 'nuc-loaded-content-component',
|
|
58
|
-
templateUrl: './loaded-content-component.html',
|
|
59
|
-
styleUrls: ['./loaded-content-component.scss']
|
|
60
|
-
}]
|
|
61
|
-
}], propDecorators: { completedTemplate: [{
|
|
62
|
-
type: Input
|
|
63
|
-
}], errorTemplate: [{
|
|
64
|
-
type: Input
|
|
65
|
-
}], inProgressTemplate: [{
|
|
66
|
-
type: Input
|
|
67
|
-
}], state: [{
|
|
68
|
-
type: Input
|
|
69
|
-
}], inProgressMessage: [{
|
|
70
|
-
type: Input
|
|
71
|
-
}], errorMessage: [{
|
|
72
|
-
type: Input
|
|
73
|
-
}], showRetry: [{
|
|
74
|
-
type: Input
|
|
75
|
-
}] } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVkLWNvbnRlbnQtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnVjbGV1cy1tYXRlcmlhbC9zcmMvbGliL2xvYWRlZC1jb250ZW50L2xvYWRlZC1jb250ZW50LWNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251Y2xldXMtbWF0ZXJpYWwvc3JjL2xpYi9sb2FkZWQtY29udGVudC9sb2FkZWQtY29udGVudC1jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBUTlELE1BQU0sT0FBTyx5QkFBeUI7SUFOdEM7UUFRVSx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFrQjlCLGlCQUFZLEdBQUcseUNBQXlDLENBQUM7UUFHekQsY0FBUyxHQUFHLElBQUksQ0FBQztLQTBDekI7SUF4Q0MsSUFBVyxPQUFPO1FBQ2hCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFO1lBQzlCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7U0FDM0I7YUFBTTtZQUNMLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssYUFBYSxDQUFDLE1BQU0sRUFBRTtnQkFDOUMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO2FBQzFCO2lCQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssYUFBYSxDQUFDLFVBQVUsRUFBRTtnQkFDekQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7YUFDL0I7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxhQUFhLENBQUMsVUFBVSxDQUFDO1FBQ2xFLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztTQUNuQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLGFBQWEsQ0FBQyxNQUFNLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLGFBQWEsQ0FBQyxTQUFTLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQVcsbUJBQW1CO1FBQzVCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0lBQ25DLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQztJQUNuQyxDQUFDOztzSEFoRVUseUJBQXlCOzBHQUF6Qix5QkFBeUIsZ1RDVHRDLHU3Q0E2Q0E7MkZEcENhLHlCQUF5QjtrQkFOckMsU0FBUzttQkFBQztvQkFDVCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDO2lCQUMvQzs4QkFNQyxpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixLQUFLO2dCQUlOLGtCQUFrQjtzQkFEakIsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLEtBQUs7Z0JBSUMsU0FBUztzQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTG9hZGluZ1N0YXRlLCBMb2FkaW5nU3RhdHVzIH0gZnJvbSAnLi9sb2FkaW5nLXN0YXRlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdudWMtbG9hZGVkLWNvbnRlbnQtY29tcG9uZW50JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbG9hZGVkLWNvbnRlbnQtY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xvYWRlZC1jb250ZW50LWNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE51Y0xvYWRlZENvbnRlbnRDb21wb25lbnQge1xyXG5cclxuICBwcml2YXRlIF9lcnJvckRldGFpbHNWaXNpYmxlID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgY29tcGxldGVkVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZXJyb3JUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KClcclxuICBpblByb2dyZXNzVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0YXRlOiBMb2FkaW5nU3RhdGU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGluUHJvZ3Jlc3NNZXNzYWdlOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGVycm9yTWVzc2FnZSA9ICdXZSBhcmUgaGF2aW5nIHRyb3VibGUgbG9hZGluZyB0aGUgZGF0YS4nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93UmV0cnkgPSB0cnVlO1xyXG5cclxuICBwdWJsaWMgZ2V0IG1lc3NhZ2UoKSB7XHJcbiAgICBpZiAodGhpcy5zdGF0ZS5tZXNzYWdlICE9IG51bGwpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc3RhdGUubWVzc2FnZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLnN0YXRlLnN0YXR1cyA9PT0gTG9hZGluZ1N0YXR1cy5mYWlsZWQpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2U7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5zdGF0ZS5zdGF0dXMgPT09IExvYWRpbmdTdGF0dXMuaW5Qcm9ncmVzcykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmluUHJvZ3Jlc3NNZXNzYWdlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgc2hvd1JldHJ5QnV0dG9uKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvd1JldHJ5O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpblByb2dyZXNzKCkge1xyXG4gICAgY29uc3QgaW5Qcm9ncmVzcyA9IHRoaXMuc3RhdGUuc3RhdHVzID09PSBMb2FkaW5nU3RhdHVzLmluUHJvZ3Jlc3M7XHJcbiAgICBpZiAoaW5Qcm9ncmVzcykge1xyXG4gICAgICB0aGlzLl9lcnJvckRldGFpbHNWaXNpYmxlID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaW5Qcm9ncmVzcztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZmFpbGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuc3RhdHVzID09PSBMb2FkaW5nU3RhdHVzLmZhaWxlZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY29tcGxldGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuc3RhdHVzID09PSBMb2FkaW5nU3RhdHVzLmNvbXBsZXRlZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZXJyb3JEZXRhaWxzVmlzaWJsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLl9lcnJvckRldGFpbHNWaXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dFcnJvckRldGFpbHMoKSB7XHJcbiAgICB0aGlzLl9lcnJvckRldGFpbHNWaXNpYmxlID0gdHJ1ZTtcclxuICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbXBsZXRlZFwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb21wbGV0ZWRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG48L25nLWNvbnRhaW5lcj5cclxuXHJcbjxkaXYgY2xhc3M9XCJpbmRpY2F0b3JzLWNvbnRhaW5lclwiICpuZ0lmPVwiaW5Qcm9ncmVzcyB8fCBmYWlsZWRcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaW5Qcm9ncmVzc1wiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImluUHJvZ3Jlc3NUZW1wbGF0ZSA/IGluUHJvZ3Jlc3NUZW1wbGF0ZTogZGVmYXVsdEluUHJvZ3Jlc3NUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJmYWlsZWRcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlcnJvclRlbXBsYXRlID8gZXJyb3JUZW1wbGF0ZTogZGVmYXVsdEVycm9yVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcblxyXG48bmctdGVtcGxhdGUgI2RlZmF1bHRJblByb2dyZXNzVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cInNwaW5uZXJcIj5cclxuICAgIDxtYXQtc3Bpbm5lciBbZGlhbWV0ZXJdPVwiNDVcIj48L21hdC1zcGlubmVyPlxyXG4gIDwvZGl2PlxyXG4gIDxwPlxyXG4gICAge3ttZXNzYWdlfX1cclxuICA8L3A+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2RlZmF1bHRFcnJvclRlbXBsYXRlPlxyXG4gIDxkaXY+XHJcbiAgICA8cD5cclxuICAgICAge3ttZXNzYWdlfX1cclxuICAgIDwvcD5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwic3RhdGUuZXJyb3JEZXRhaWxzXCI+XHJcbiAgICAgIDxidXR0b24gKm5nSWY9XCIhZXJyb3JEZXRhaWxzVmlzaWJsZVwiIG1hdC1idXR0b24gY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cInNob3dFcnJvckRldGFpbHMoKVwiPnNob3cgZGV0YWlsczwvYnV0dG9uPlxyXG5cclxuICAgICAgPGRpdiAqbmdJZj1cImVycm9yRGV0YWlsc1Zpc2libGVcIiBjbGFzcz1cImVycm9yLWRldGFpbHMgbWF0LXNtYWxsXCI+XHJcbiAgICAgICAgPHN0cm9uZz5kZXRhaWxzOjwvc3Ryb25nPjxiciAvPlxyXG4gICAgICAgIDxwPnt7c3RhdGUuZXJyb3JEZXRhaWxzfX08L3A+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPHAgKm5nSWY9XCJzaG93UmV0cnlCdXR0b25cIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWluaS1mYWIgY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cInN0YXRlLnJldHJ5KClcIj5cclxuICAgICAgICA8bWF0LWljb24+cmVmcmVzaDwvbWF0LWljb24+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9wPlxyXG5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
export class NucUserAvatarComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.size = 'medium';
|
|
7
|
-
this.background = false;
|
|
8
|
-
}
|
|
9
|
-
getUserInitials() {
|
|
10
|
-
const nameParts = this.name.split(' ');
|
|
11
|
-
return nameParts[0].charAt(0).toUpperCase() + '' + nameParts[nameParts.length - 1].charAt(0).toUpperCase();
|
|
12
|
-
}
|
|
13
|
-
getHslString() {
|
|
14
|
-
if (!this.background) {
|
|
15
|
-
return `hsl(${0},${0}%,${100}%)`;
|
|
16
|
-
}
|
|
17
|
-
let hash = 0;
|
|
18
|
-
for (let i = 0; i < this.name.length; i++) {
|
|
19
|
-
/*
|
|
20
|
-
* Javascript uses double precision floating-point format for all numerical datatypes.
|
|
21
|
-
* Except when using bitwise operations, where operators are converted to 32-bit signed integers.
|
|
22
|
-
* Result of bitwise operations are then converted back to double precision floating-point format.
|
|
23
|
-
*
|
|
24
|
-
* We make a bitwise OR operation between the new hash and 0.
|
|
25
|
-
* This keeps only the lower 32 bits in the new hash value.
|
|
26
|
-
*/
|
|
27
|
-
// eslint-disable-next-line no-bitwise
|
|
28
|
-
hash = (this.name.charCodeAt(i) + ((hash << 15) - hash)) | 0;
|
|
29
|
-
}
|
|
30
|
-
const hue = Math.abs(hash % 360);
|
|
31
|
-
const lightness = 49.2;
|
|
32
|
-
const saturation = 42.6;
|
|
33
|
-
return `hsl(${hue},${saturation}%,${lightness}%)`;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
NucUserAvatarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.3", ngImport: i0, type: NucUserAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
37
|
-
NucUserAvatarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.3", type: NucUserAvatarComponent, selector: "nuc-user-avatar", inputs: { name: "name", image: "image", size: "size", background: "background" }, ngImport: i0, template: "<ng-container *ngIf=\"image\">\r\n <div class=\"user-avatar size-{{size}}\">\r\n <img src=\"{{image}}\" />\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"!image\">\r\n <div class=\"user-avatar size-{{size}} unselectable\" [style.background-color]=\"getHslString()\" [ngClass]=\"{'white-text': background, 'black-text border': !background}\">\r\n {{getUserInitials()}}\r\n </div>\r\n</ng-container>\r\n", styles: [".user-avatar{display:flex;align-items:center;justify-content:center;border-radius:50%;position:relative;text-align:center;font-weight:400}.user-avatar img{-o-object-fit:contain;object-fit:contain;width:inherit;height:inherit;border-radius:50%}.white-text{color:#fff}.black-text{color:#333}.unselectable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.border{border:2px solid #333333}.user-avatar.size-small{height:24px;width:24px;font-size:.8em;line-height:24px}.user-avatar.size-medium{height:40px;width:40px;font-size:1.2em;line-height:40px}.user-avatar.size-large{height:64px;width:64px;font-size:2em;line-height:64px}.user-avatar.size-xlarge{height:90px;width:90px;font-size:3em;line-height:90px}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.3", ngImport: i0, type: NucUserAvatarComponent, decorators: [{
|
|
39
|
-
type: Component,
|
|
40
|
-
args: [{
|
|
41
|
-
// eslint-disable-next-line @angular-eslint/component-selector
|
|
42
|
-
selector: 'nuc-user-avatar',
|
|
43
|
-
templateUrl: './user-avatar-component.html',
|
|
44
|
-
styleUrls: ['./user-avatar-component.scss']
|
|
45
|
-
}]
|
|
46
|
-
}], ctorParameters: function () { return []; }, propDecorators: { name: [{
|
|
47
|
-
type: Input
|
|
48
|
-
}], image: [{
|
|
49
|
-
type: Input
|
|
50
|
-
}], size: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}], background: [{
|
|
53
|
-
type: Input
|
|
54
|
-
}] } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hdmF0YXItY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnVjbGV1cy1tYXRlcmlhbC9zcmMvbGliL3VzZXItYXZhdGFyL3VzZXItYXZhdGFyLWNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251Y2xldXMtbWF0ZXJpYWwvc3JjL2xpYi91c2VyLWF2YXRhci91c2VyLWF2YXRhci1jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBV2pELE1BQU0sT0FBTyxzQkFBc0I7SUFPakM7UUFIUyxTQUFJLEdBQWUsUUFBUSxDQUFDO1FBQzVCLGVBQVUsR0FBZSxLQUFLLENBQUM7SUFHeEMsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QyxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM3RyxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1NBQ2xDO1FBR0QsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3pDOzs7Ozs7O2VBT0c7WUFDSCxzQ0FBc0M7WUFDdEMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUM5RDtRQUVELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBRWpDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQztRQUN2QixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFFeEIsT0FBTyxPQUFPLEdBQUcsSUFBSSxVQUFVLEtBQUssU0FBUyxJQUFJLENBQUM7SUFDcEQsQ0FBQzs7bUhBekNVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHlJQ1huQywwYUFXQTsyRkRBYSxzQkFBc0I7a0JBUGxDLFNBQVM7bUJBQUM7b0JBQ1QsOERBQThEO29CQUM5RCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixXQUFXLEVBQUUsOEJBQThCO29CQUMzQyxTQUFTLEVBQUUsQ0FBQyw4QkFBOEIsQ0FBQztpQkFDNUM7MEVBSVUsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuZXhwb3J0IHR5cGUgQXZhdGFyU2l6ZSA9ICdzbWFsbCcgfCAnbWVkaXVtJyB8ICdsYXJnZScgfCAneGxhcmdlJztcclxuZXhwb3J0IHR5cGUgQmFja2dyb3VuZCA9IHRydWUgfCBmYWxzZTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdudWMtdXNlci1hdmF0YXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLWF2YXRhci1jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdXNlci1hdmF0YXItY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIE51Y1VzZXJBdmF0YXJDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaW1hZ2U6IHN0cmluZztcclxuICBASW5wdXQoKSBzaXplOiBBdmF0YXJTaXplID0gJ21lZGl1bSc7XHJcbiAgQElucHV0KCkgYmFja2dyb3VuZDogQmFja2dyb3VuZCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcblxyXG4gIGdldFVzZXJJbml0aWFscygpIHtcclxuICAgIGNvbnN0IG5hbWVQYXJ0cyA9IHRoaXMubmFtZS5zcGxpdCgnICcpO1xyXG4gICAgcmV0dXJuIG5hbWVQYXJ0c1swXS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArICcnICsgbmFtZVBhcnRzW25hbWVQYXJ0cy5sZW5ndGggLSAxXS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKTtcclxuICB9XHJcblxyXG4gIGdldEhzbFN0cmluZygpOiBzdHJpbmcge1xyXG4gICAgaWYgKCF0aGlzLmJhY2tncm91bmQpIHtcclxuICAgICAgcmV0dXJuIGBoc2woJHswfSwkezB9JSwkezEwMH0lKWA7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGxldCBoYXNoID0gMDtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5uYW1lLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIC8qXHJcbiAgICAgICAqIEphdmFzY3JpcHQgdXNlcyBkb3VibGUgcHJlY2lzaW9uIGZsb2F0aW5nLXBvaW50IGZvcm1hdCBmb3IgYWxsIG51bWVyaWNhbCBkYXRhdHlwZXMuXHJcbiAgICAgICAqIEV4Y2VwdCB3aGVuIHVzaW5nIGJpdHdpc2Ugb3BlcmF0aW9ucywgd2hlcmUgb3BlcmF0b3JzIGFyZSBjb252ZXJ0ZWQgdG8gMzItYml0IHNpZ25lZCBpbnRlZ2Vycy5cclxuICAgICAgICogUmVzdWx0IG9mIGJpdHdpc2Ugb3BlcmF0aW9ucyBhcmUgdGhlbiBjb252ZXJ0ZWQgYmFjayB0byBkb3VibGUgcHJlY2lzaW9uIGZsb2F0aW5nLXBvaW50IGZvcm1hdC5cclxuICAgICAgICpcclxuICAgICAgICogV2UgbWFrZSBhIGJpdHdpc2UgT1Igb3BlcmF0aW9uIGJldHdlZW4gdGhlIG5ldyBoYXNoIGFuZCAwLlxyXG4gICAgICAgKiBUaGlzIGtlZXBzIG9ubHkgdGhlIGxvd2VyIDMyIGJpdHMgaW4gdGhlIG5ldyBoYXNoIHZhbHVlLlxyXG4gICAgICAgKi9cclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWJpdHdpc2VcclxuICAgICAgaGFzaCA9ICh0aGlzLm5hbWUuY2hhckNvZGVBdChpKSArICgoaGFzaCA8PCAxNSkgLSBoYXNoKSkgfCAwO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGh1ZSA9IE1hdGguYWJzKGhhc2ggJSAzNjApO1xyXG5cclxuICAgIGNvbnN0IGxpZ2h0bmVzcyA9IDQ5LjI7XHJcbiAgICBjb25zdCBzYXR1cmF0aW9uID0gNDIuNjtcclxuXHJcbiAgICByZXR1cm4gYGhzbCgke2h1ZX0sJHtzYXR1cmF0aW9ufSUsJHtsaWdodG5lc3N9JSlgO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaW1hZ2VcIj5cclxuICA8ZGl2IGNsYXNzPVwidXNlci1hdmF0YXIgc2l6ZS17e3NpemV9fVwiPlxyXG4gICAgPGltZyBzcmM9XCJ7e2ltYWdlfX1cIiAgLz5cclxuICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcblxyXG48bmctY29udGFpbmVyICpuZ0lmPVwiIWltYWdlXCI+XHJcbiAgPGRpdiBjbGFzcz1cInVzZXItYXZhdGFyIHNpemUte3tzaXplfX0gdW5zZWxlY3RhYmxlXCIgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiZ2V0SHNsU3RyaW5nKClcIiBbbmdDbGFzc109XCJ7J3doaXRlLXRleHQnOiBiYWNrZ3JvdW5kLCAnYmxhY2stdGV4dCBib3JkZXInOiAhYmFja2dyb3VuZH1cIj5cclxuICAgIHt7Z2V0VXNlckluaXRpYWxzKCl9fVxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kolektor-nucleus-material.js","sources":["../../../projects/nucleus-material/src/lib/dialog/dialog.component.ts","../../../projects/nucleus-material/src/lib/dialog/dialog.component.html","../../../projects/nucleus-material/src/lib/dialog/dialog.service.ts","../../../projects/nucleus-material/src/lib/dialog/dialog.module.ts","../../../projects/nucleus-material/src/lib/dialog/models.ts","../../../projects/nucleus-material/src/lib/loaded-content/loading-state.ts","../../../projects/nucleus-material/src/lib/loaded-content/loaded-content-component.ts","../../../projects/nucleus-material/src/lib/loaded-content/loaded-content-component.html","../../../projects/nucleus-material/src/lib/loaded-content/loaded-content-directive.ts","../../../projects/nucleus-material/src/lib/loaded-content/loaded-content-module.ts","../../../projects/nucleus-material/src/lib/native-styling/native-styling.service.ts","../../../projects/nucleus-material/src/lib/native-styling/models.ts","../../../projects/nucleus-material/src/lib/swipe-tabs/swipe-tabs-directive.ts","../../../projects/nucleus-material/src/lib/swipe-tabs/swipe-tabs-module.ts","../../../projects/nucleus-material/src/lib/snackbar/snackbar.service.ts","../../../projects/nucleus-material/src/lib/snackbar/snackbar.module.ts","../../../projects/nucleus-material/src/lib/snackbar/models.ts","../../../projects/nucleus-material/src/lib/user-avatar/user-avatar-component.ts","../../../projects/nucleus-material/src/lib/user-avatar/user-avatar-component.html","../../../projects/nucleus-material/src/lib/user-avatar/user-avatar-module.ts","../../../projects/nucleus-material/src/public-api.ts","../../../projects/nucleus-material/src/kolektor-nucleus-material.ts"],"sourcesContent":["import { Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { NucDialogData } from './models';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nuc-dialog',\r\n templateUrl: './dialog.component.html',\r\n styleUrls: ['./dialog.component.scss']\r\n})\r\n\r\nexport class NucDialogComponent {\r\n constructor(\r\n public dialogRef: MatDialogRef<NucDialogComponent>,\r\n @Inject(MAT_DIALOG_DATA) public dialogData: NucDialogData\r\n ) { }\r\n}\r\n","<ng-container *ngIf=\"dialogData\">\r\n <h2 mat-dialog-title *ngIf=\"dialogData.title\">\r\n {{dialogData.title}}\r\n </h2>\r\n <mat-dialog-content>{{dialogData.message}}</mat-dialog-content>\r\n <mat-dialog-actions>\r\n <ng-container *ngFor=\"let action of dialogData.actions\">\r\n <button color=\"{{action.color || 'primary'}}\" *ngIf=\"action.value === undefined\" mat-button mat-dialog-close>{{action.text}}</button>\r\n <button color=\"{{action.color || 'primary'}}\" *ngIf=\"action.value !== undefined\" mat-button [mat-dialog-close]=\"action.value\">{{action.text}}</button>\r\n </ng-container>\r\n </mat-dialog-actions>\r\n</ng-container>\r\n","import { Injectable } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { NucDialogData } from './models';\r\nimport { NucDialogComponent } from './dialog.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NucDialogService {\r\n constructor(private _matDialog: MatDialog) { }\r\n\r\n /**\r\n * Opens a NucDialog with content from dialogData.\r\n *\r\n * @param dialogData NucDialogData containing title, message and possible actions.\r\n * @param dialogConfig Extra configuration options. Data property is ignored, since it will be set to dialogData.\r\n * @returns a promise with value that was specified inside pressed Nucleus action.\r\n */\r\n public async open(dialogData: NucDialogData, dialogConfig?: MatDialogConfig): Promise<any> {\r\n if (dialogData.actions && dialogData.actions.length > 0) {\r\n if (dialogConfig) {\r\n dialogConfig.data = dialogData;\r\n } else {\r\n dialogConfig = { data: dialogData };\r\n }\r\n return await this._matDialog.open(NucDialogComponent, dialogConfig).beforeClosed().toPromise();\r\n } else {\r\n console.error('Nucleus.AppCore: NucDialogData requires at least one action.');\r\n }\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { NucDialogComponent } from './dialog.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n NucDialogComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatDialogModule,\r\n MatButtonModule\r\n ],\r\n entryComponents: [\r\n NucDialogComponent\r\n ]\r\n})\r\n\r\nexport class NucDialogModule { }\r\n","export interface NucDialogData {\r\n /** Optional title for the dialog. */\r\n title?: string;\r\n /** Message for the dialog. */\r\n message: string;\r\n /** Action(s) (buttons) for the dialog. At least one is required. */\r\n actions: NucAction[];\r\n}\r\n\r\nexport interface NucAction {\r\n /** Text for the action (button). */\r\n text: string;\r\n /** Return value for the action (button). */\r\n value?: any;\r\n /** Optional color of the action (button). */\r\n color?: NucColor;\r\n}\r\n\r\nexport enum NucColor {\r\n /** Primary color of the theme. */\r\n primary = 'primary',\r\n /** Accent color of the theme. */\r\n accent = 'accent',\r\n /** Warning color of the theme. */\r\n warn = 'warn'\r\n}\r\n","import { Observable, Subscription } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nexport enum LoadingStatus { completed, inProgress, failed, undefined }\r\n\r\nexport class LoadingState {\r\n private _status: LoadingStatus = LoadingStatus.undefined;\r\n private _message: string = null;\r\n private _errorDetails: string = null;\r\n private _resultFunction: (result: any) => void;\r\n private _errorFunction: (error: HttpErrorResponse) => void;\r\n private _completeFunction: () => void;\r\n private _loadObservable: Observable<any>;\r\n private _lastSubscription: Subscription = null;\r\n\r\n get status(): LoadingStatus {\r\n return this._status;\r\n }\r\n\r\n get message(): string {\r\n return this._message;\r\n }\r\n\r\n get errorDetails(): string {\r\n return this._errorDetails;\r\n }\r\n\r\n public load<T>(\r\n observable: Observable<T>,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n return this._load(true, null, observable, resultFunction, errorFunction, completeFunction);\r\n }\r\n\r\n public loadWithMessage<T>(\r\n observable: Observable<T>,\r\n message: string,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n return this._load(true, message, observable, resultFunction, errorFunction, completeFunction);\r\n }\r\n\r\n public invoke<T>(\r\n observable: Observable<T>,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n return this._load(false, null, observable, resultFunction, errorFunction, completeFunction);\r\n }\r\n\r\n public invokeWithMessage<T>(\r\n observable: Observable<T>,\r\n message: string,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n return this._load(false, message, observable, resultFunction, errorFunction, completeFunction);\r\n }\r\n\r\n public retry() {\r\n if (this._lastSubscription) {\r\n this._lastSubscription.unsubscribe();\r\n }\r\n this.setInProgress();\r\n this._lastSubscription = this._loadObservable.subscribe(this._resultFunction, this._errorFunction, this._completeFunction);\r\n return this._lastSubscription;\r\n }\r\n\r\n public setInProgress(message: string = null) {\r\n this._status = LoadingStatus.inProgress;\r\n this._message = message;\r\n }\r\n\r\n public setCompleted() {\r\n this._status = LoadingStatus.completed;\r\n }\r\n\r\n public setFailed(message: string = null, error: string = null) {\r\n this._status = LoadingStatus.failed;\r\n this._message = message;\r\n this._errorDetails = error;\r\n }\r\n\r\n private _load<T>(\r\n saveAsLoadObservable: boolean,\r\n progressMessage: string,\r\n observable: Observable<T>,\r\n resultFunction?: (result: T) => void,\r\n errorFunction?: (error: HttpErrorResponse) => void,\r\n completeFunction?: () => void\r\n ): Subscription {\r\n if (this._lastSubscription) {\r\n this._lastSubscription.unsubscribe();\r\n }\r\n\r\n this.setInProgress(progressMessage);\r\n const obs = observable.pipe(\r\n tap(\r\n () => {\r\n if (!saveAsLoadObservable && this.message) { // if message was used one time we clear it\r\n this._message = null;\r\n }\r\n this.setCompleted();\r\n },\r\n (err) => {\r\n this.setFailed(null, LoadingState.getErrorDetails(err));\r\n }\r\n )\r\n );\r\n\r\n if (saveAsLoadObservable) {\r\n this._loadObservable = obs;\r\n this._resultFunction = resultFunction;\r\n this._errorFunction = errorFunction;\r\n this._completeFunction = completeFunction;\r\n }\r\n\r\n this._lastSubscription = obs.subscribe(resultFunction, errorFunction, completeFunction);\r\n return this._lastSubscription;\r\n }\r\n\r\n public static getErrorDetails(error: any) {\r\n // this routine tries to get the best error details from:\r\n // - standard rfc7807 http error: https://datatracker.ietf.org/doc/html/rfc7807\r\n // - angular HttpError\r\n // - JS Error object\r\n\r\n const problem = error?.error;\r\n if (problem?.title && problem?.detail) {\r\n return `${problem.title}: ${problem.detail}`;\r\n } else {\r\n return problem?.title || problem?.detail || error.message || error;\r\n }\r\n }\r\n}\r\n","import { Component, Input, TemplateRef } from '@angular/core';\r\nimport { LoadingState, LoadingStatus } from './loading-state';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nuc-loaded-content-component',\r\n templateUrl: './loaded-content-component.html',\r\n styleUrls: ['./loaded-content-component.scss']\r\n})\r\nexport class NucLoadedContentComponent {\r\n\r\n private _errorDetailsVisible = false;\r\n\r\n @Input()\r\n completedTemplate: TemplateRef<any>;\r\n\r\n @Input()\r\n errorTemplate: TemplateRef<any>;\r\n\r\n @Input()\r\n inProgressTemplate: TemplateRef<any>;\r\n\r\n @Input()\r\n public state: LoadingState;\r\n\r\n @Input()\r\n public inProgressMessage: string;\r\n\r\n @Input()\r\n public errorMessage = 'We are having trouble loading the data.';\r\n\r\n @Input()\r\n public showRetry = true;\r\n\r\n public get message() {\r\n if (this.state.message != null) {\r\n return this.state.message;\r\n } else {\r\n if (this.state.status === LoadingStatus.failed) {\r\n return this.errorMessage;\r\n } else if (this.state.status === LoadingStatus.inProgress) {\r\n return this.inProgressMessage;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n public get showRetryButton() {\r\n return this.showRetry;\r\n }\r\n\r\n public get inProgress() {\r\n const inProgress = this.state.status === LoadingStatus.inProgress;\r\n if (inProgress) {\r\n this._errorDetailsVisible = false;\r\n }\r\n return inProgress;\r\n }\r\n\r\n public get failed() {\r\n return this.state.status === LoadingStatus.failed;\r\n }\r\n\r\n public get completed() {\r\n return this.state.status === LoadingStatus.completed;\r\n }\r\n\r\n public get errorDetailsVisible() {\r\n return this._errorDetailsVisible;\r\n }\r\n\r\n public showErrorDetails() {\r\n this._errorDetailsVisible = true;\r\n }\r\n}\r\n","<ng-container *ngIf=\"completed\">\r\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\r\n</ng-container>\r\n\r\n<div class=\"indicators-container\" *ngIf=\"inProgress || failed\">\r\n <ng-container *ngIf=\"inProgress\">\r\n <ng-container *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate: defaultInProgressTemplate\"></ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"failed\">\r\n <ng-container *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"></ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #defaultInProgressTemplate>\r\n <div class=\"spinner\">\r\n <mat-spinner [diameter]=\"45\"></mat-spinner>\r\n </div>\r\n <p>\r\n {{message}}\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #defaultErrorTemplate>\r\n <div>\r\n <p>\r\n {{message}}\r\n </p>\r\n\r\n <div *ngIf=\"state.errorDetails\">\r\n <button *ngIf=\"!errorDetailsVisible\" mat-button color=\"warn\" (click)=\"showErrorDetails()\">show details</button>\r\n\r\n <div *ngIf=\"errorDetailsVisible\" class=\"error-details mat-small\">\r\n <strong>details:</strong><br />\r\n <p>{{state.errorDetails}}</p>\r\n </div>\r\n </div>\r\n\r\n <p *ngIf=\"showRetryButton\">\r\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\r\n <mat-icon>refresh</mat-icon>\r\n </button>\r\n </p>\r\n\r\n </div>\r\n</ng-template>\r\n","import {\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n Directive,\r\n Input,\r\n TemplateRef,\r\n ViewContainerRef } from '@angular/core';\r\nimport { NucLoadedContentComponent } from './loaded-content-component';\r\nimport { LoadingState } from './loading-state';\r\n\r\n// eslint-disable-next-line @angular-eslint/directive-selector\r\n@Directive({ selector: '[nucLoadedContent]' })\r\nexport class NucLoadedContentDirective {\r\n\r\n private _state: LoadingState;\r\n private _completedTemplateRef: TemplateRef<any> | null = null;\r\n private _errorTemplateRef: TemplateRef<any> | null = null;\r\n private _inProgressTemplateRef: TemplateRef<any> | null = null;\r\n private _component: ComponentRef<NucLoadedContentComponent> = null;\r\n\r\n constructor(\r\n private _viewContainer: ViewContainerRef,\r\n private templateRef: TemplateRef<any>,\r\n private _componentResolver: ComponentFactoryResolver) {\r\n this._completedTemplateRef = templateRef;\r\n }\r\n\r\n @Input()\r\n set nucLoadedContent(state: LoadingState) {\r\n // add some error handling if state is null, etc.\r\n this._state = state;\r\n this._updateView();\r\n }\r\n\r\n // eslint-disable-next-line @angular-eslint/no-input-rename\r\n @Input('nucLoadedContentError')\r\n set errorTemplate(templateRef: TemplateRef<any> | null) {\r\n this._errorTemplateRef = templateRef;\r\n this._updateView();\r\n }\r\n\r\n // eslint-disable-next-line @angular-eslint/no-input-rename\r\n @Input('nucLoadedContentInProgress')\r\n set inProgressTemplate(templateRef: TemplateRef<any> | null) {\r\n this._inProgressTemplateRef = templateRef;\r\n this._updateView();\r\n }\r\n\r\n @Input('nucLoadedContentInProgressMessage')\r\n set inProgressMessage(inProgressMessage: string) {\r\n this._component.instance.inProgressMessage = inProgressMessage;\r\n }\r\n\r\n @Input('nucLoadedContentErrorMessage')\r\n set errorMessage(errorMessage: string) {\r\n this._component.instance.errorMessage = errorMessage;\r\n }\r\n\r\n @Input('nucLoadedContentShowRetry')\r\n set showRetry(showRetry: boolean) {\r\n this._component.instance.showRetry = showRetry;\r\n }\r\n\r\n private _updateView() {\r\n if (this._component == null) {\r\n const fac = this._componentResolver.resolveComponentFactory(NucLoadedContentComponent);\r\n this._component = this._viewContainer.createComponent(fac);\r\n }\r\n\r\n this._component.instance.state = this._state;\r\n this._component.instance.completedTemplate = this._completedTemplateRef;\r\n\r\n if (this._inProgressTemplateRef) {\r\n this._component.instance.inProgressTemplate = this._inProgressTemplateRef;\r\n }\r\n\r\n if (this._errorTemplateRef) {\r\n this._component.instance.errorTemplate = this._errorTemplateRef;\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { NucLoadedContentComponent } from './loaded-content-component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NucLoadedContentDirective } from './loaded-content-directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n NucLoadedContentDirective,\r\n NucLoadedContentComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatProgressSpinnerModule,\r\n MatButtonModule,\r\n MatIconModule\r\n ],\r\n exports: [\r\n NucLoadedContentDirective\r\n ],\r\n entryComponents: [\r\n NucLoadedContentComponent\r\n ]\r\n})\r\nexport class NucLoadedContentModule { }\r\n","/* eslint-disable no-undef */\r\n/// <reference path=\"../../../../../node_modules/@types/winrt-uwp/index.d.ts\" />\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { WindowsTitleBarSyle } from './models';\r\nimport { Router, NavigationEnd } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NativeStylingService {\r\n\r\n constructor(private router: Router) { }\r\n\r\n public styleWindowsTitleBar(style: WindowsTitleBarSyle) {\r\n\r\n if ((window as any).Windows) {\r\n const accentColor = this.convertColor(style.backgroundColor);\r\n const hoverColor = style.hoverBackgroundColor ? this.convertColor(style.hoverBackgroundColor) : this.makeDarker(accentColor);\r\n const foregroundColor = style.foreground === 'light' ? Windows.UI.Colors.white : Windows.UI.Colors.black;\r\n const titleColor = style.hideTitle ? accentColor : foregroundColor;\r\n\r\n const appView = Windows.UI.ViewManagement.ApplicationView.getForCurrentView();\r\n const titleBar = appView.titleBar;\r\n\r\n titleBar.foregroundColor = titleColor;\r\n titleBar.inactiveForegroundColor = titleColor;\r\n\r\n titleBar.buttonHoverBackgroundColor = hoverColor;\r\n titleBar.buttonBackgroundColor = accentColor;\r\n titleBar.buttonInactiveBackgroundColor = accentColor;\r\n\r\n titleBar.buttonHoverForegroundColor = foregroundColor;\r\n titleBar.buttonForegroundColor = foregroundColor;\r\n titleBar.buttonInactiveForegroundColor = foregroundColor;\r\n\r\n titleBar.backgroundColor = accentColor;\r\n titleBar.inactiveBackgroundColor = accentColor;\r\n\r\n if (style.hideBackButton) {\r\n this.hideBackButton();\r\n const subscription = this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd && event.id > 1) {\r\n this.hideBackButton();\r\n subscription.unsubscribe();\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n private hideBackButton() {\r\n const systemNavigation = Windows.UI.Core.SystemNavigationManager.getForCurrentView();\r\n systemNavigation.appViewBackButtonVisibility = Windows.UI.Core.AppViewBackButtonVisibility.collapsed;\r\n }\r\n\r\n private convertColor(colorStr: string): Windows.UI.Color {\r\n const regEx = new RegExp('^#([A-Fa-f0-9]{6})$');\r\n if (! regEx.test(colorStr)) {\r\n throw new Error('Color is not in the right format. Should be #RRGGBB.');\r\n }\r\n\r\n const r = parseInt(colorStr.substr(1, 2), 16);\r\n const g = parseInt(colorStr.substr(3, 2), 16);\r\n const b = parseInt(colorStr.substr(5, 2), 16);\r\n\r\n return Windows.UI.ColorHelper.fromArgb(255, r, g, b);\r\n }\r\n\r\n private makeDarker(color: Windows.UI.Color, factor = 0.80) {\r\n return Windows.UI.ColorHelper.fromArgb(color.a, color.r * factor, color.g * factor, color.b * factor);\r\n }\r\n}\r\n","export class WindowsTitleBarSyle {\r\n backgroundColor: string;\r\n hoverBackgroundColor?: string = null;\r\n foreground?: 'dark' | 'light' = 'dark';\r\n hideTitle ? = false;\r\n hideBackButton ?= false;\r\n}\r\n","import { Directive, ElementRef, OnInit } from '@angular/core';\r\nimport { MatTabGroup } from '@angular/material/tabs';\r\nimport * as Hammer from 'hammerjs';\r\n\r\n// eslint-disable-next-line @angular-eslint/directive-selector\r\n@Directive({ selector: '[nucSwipe]' })\r\n\r\nexport class NucSwipeTabsDirective implements OnInit {\r\n constructor(\r\n private element: ElementRef, // ElementRef<MatTabGroup> causes errors.\r\n private tabGroup: MatTabGroup) { }\r\n\r\n ngOnInit() {\r\n const hammerJs = new Hammer.Manager(this.element.nativeElement, {\r\n inputClass: Hammer.TouchInput\r\n });\r\n\r\n hammerJs.add(new Hammer.Pan({\r\n direction: Hammer.DIRECTION_HORIZONTAL,\r\n threshold: 30\r\n }));\r\n\r\n hammerJs.on('panleft panright', (event) => {\r\n if (event.isFinal) {\r\n // Check if any of the tabs are set to disabled\r\n const tabs = this.tabGroup._tabs.map(x => x.disabled);\r\n const anyTabDisabled = tabs.some(disabled => disabled);\r\n\r\n if (event.type === 'panleft' && event.direction === 2 && this.tabGroup.selectedIndex < (this.tabGroup._tabs.length - 1)) {\r\n // Go to next tab\r\n if (anyTabDisabled) {\r\n const tabsToRight = tabs.slice(this.tabGroup.selectedIndex + 1);\r\n this.tabGroup.selectedIndex += this.getOffset(tabsToRight);\r\n } else {\r\n this.tabGroup.selectedIndex++;\r\n }\r\n } else if (event.type === 'panright' && event.direction === 4 && this.tabGroup.selectedIndex > 0) {\r\n // Go to previous tab\r\n if (anyTabDisabled) {\r\n const tabsToLeft = tabs.slice().reverse().slice(-this.tabGroup.selectedIndex);\r\n this.tabGroup.selectedIndex -= this.getOffset(tabsToLeft);\r\n } else {\r\n this.tabGroup.selectedIndex--;\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n private getOffset(tabs: boolean[]) {\r\n // Find offset to the first enabled tab\r\n const offset = tabs.indexOf(tabs.find(disabled => !disabled)) + 1;\r\n return offset;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { NucSwipeTabsDirective } from './swipe-tabs-directive';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n declarations: [\r\n NucSwipeTabsDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n NucSwipeTabsDirective\r\n ]\r\n})\r\n\r\nexport class NucSwipeTabsModule {\r\n\r\n}\r\n","import { Injectable, NgZone } from '@angular/core';\r\nimport { MatSnackBar, MatSnackBarConfig, MatSnackBarRef, TextOnlySnackBar } from '@angular/material/snack-bar';\r\nimport { NucSnackbarType } from './models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class NucSnackbarService {\r\n\r\n constructor(private _matSnackBar: MatSnackBar, private _zone: NgZone) {\r\n\r\n }\r\n\r\n public openSnackbar(type: NucSnackbarType, message: string, action: string | null, duration: number): MatSnackBarRef<TextOnlySnackBar> {\r\n let snackbarRef: MatSnackBarRef<TextOnlySnackBar>;\r\n\r\n this._zone.run(() => {\r\n snackbarRef = this._matSnackBar.open(message, action, {\r\n duration,\r\n panelClass: `${type}-snackbar`\r\n });\r\n });\r\n\r\n return snackbarRef;\r\n }\r\n\r\n\r\n public openSnackbarWithConfig(message: string, action: string | null, config: MatSnackBarConfig): MatSnackBarRef<TextOnlySnackBar> {\r\n let snackbarRef: MatSnackBarRef<TextOnlySnackBar>;\r\n\r\n this._zone.run(() => {\r\n snackbarRef = this._matSnackBar.open(message, action, config);\r\n });\r\n\r\n return snackbarRef;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\r\n\r\n@NgModule({\r\n declarations: [\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatSnackBarModule\r\n ],\r\n exports: [\r\n ]\r\n})\r\n\r\nexport class NucSnackbarModule {\r\n\r\n}\r\n","export enum NucSnackbarType {\r\n Info = 'info',\r\n Warning = 'warning',\r\n Danger = 'danger',\r\n Success = 'success'\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nexport type AvatarSize = 'small' | 'medium' | 'large' | 'xlarge';\r\nexport type Background = true | false;\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nuc-user-avatar',\r\n templateUrl: './user-avatar-component.html',\r\n styleUrls: ['./user-avatar-component.scss']\r\n})\r\n\r\nexport class NucUserAvatarComponent {\r\n\r\n @Input() name: string;\r\n @Input() image: string;\r\n @Input() size: AvatarSize = 'medium';\r\n @Input() background: Background = false;\r\n\r\n constructor() {\r\n }\r\n\r\n getUserInitials() {\r\n const nameParts = this.name.split(' ');\r\n return nameParts[0].charAt(0).toUpperCase() + '' + nameParts[nameParts.length - 1].charAt(0).toUpperCase();\r\n }\r\n\r\n getHslString(): string {\r\n if (!this.background) {\r\n return `hsl(${0},${0}%,${100}%)`;\r\n }\r\n\r\n\r\n let hash = 0;\r\n for (let i = 0; i < this.name.length; i++) {\r\n /*\r\n * Javascript uses double precision floating-point format for all numerical datatypes.\r\n * Except when using bitwise operations, where operators are converted to 32-bit signed integers.\r\n * Result of bitwise operations are then converted back to double precision floating-point format.\r\n *\r\n * We make a bitwise OR operation between the new hash and 0.\r\n * This keeps only the lower 32 bits in the new hash value.\r\n */\r\n // eslint-disable-next-line no-bitwise\r\n hash = (this.name.charCodeAt(i) + ((hash << 15) - hash)) | 0;\r\n }\r\n\r\n const hue = Math.abs(hash % 360);\r\n\r\n const lightness = 49.2;\r\n const saturation = 42.6;\r\n\r\n return `hsl(${hue},${saturation}%,${lightness}%)`;\r\n }\r\n}\r\n","<ng-container *ngIf=\"image\">\r\n <div class=\"user-avatar size-{{size}}\">\r\n <img src=\"{{image}}\" />\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"!image\">\r\n <div class=\"user-avatar size-{{size}} unselectable\" [style.background-color]=\"getHslString()\" [ngClass]=\"{'white-text': background, 'black-text border': !background}\">\r\n {{getUserInitials()}}\r\n </div>\r\n</ng-container>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NucUserAvatarComponent } from './user-avatar-component';\r\n\r\n@NgModule({\r\n declarations: [\r\n NucUserAvatarComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n NucUserAvatarComponent\r\n ]\r\n})\r\n\r\nexport class NucUserAvatarModule {\r\n\r\n}\r\n","/*\r\n * Public API Surface of nucleus-material\r\n */\r\n\r\n// dialog\r\nexport * from './lib/dialog/dialog.service';\r\nexport * from './lib/dialog/dialog.module';\r\nexport * from './lib/dialog/models';\r\n\r\n// loaded-content\r\nexport * from './lib/loaded-content/loading-state';\r\nexport * from './lib/loaded-content/loaded-content-component';\r\nexport * from './lib/loaded-content/loaded-content-directive';\r\nexport * from './lib/loaded-content/loaded-content-module';\r\n\r\n// native-styling\r\nexport * from './lib/native-styling/native-styling.service';\r\nexport * from './lib/native-styling/models';\r\n\r\n// swipe-tabs\r\nexport * from './lib/swipe-tabs/swipe-tabs-directive';\r\nexport * from './lib/swipe-tabs/swipe-tabs-module';\r\n\r\n// dialog component\r\nexport * from './lib/dialog/dialog.service';\r\nexport * from './lib/dialog/dialog.module';\r\nexport * from './lib/dialog/models';\r\n\r\n// snackbar component\r\nexport * from './lib/snackbar/snackbar.service';\r\nexport * from './lib/snackbar/snackbar.module';\r\nexport * from './lib/snackbar/models';\r\n\r\n// user-avatar\r\nexport * from './lib/user-avatar/user-avatar-component';\r\nexport * from './lib/user-avatar/user-avatar-module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|