@coolon/angular-ui-powerups 0.0.9 → 0.0.10
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/bundles/coolon-angular-ui-powerups.umd.js +54 -22
- package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
- package/coolon-angular-ui-powerups.metadata.json +1 -1
- package/esm2015/lib/animations/slideDownAndUpAnimation.js +2 -1
- package/esm2015/lib/components/forms/abstract-input.component.js +16 -11
- package/esm2015/lib/directives/focus-binding.directive.js +6 -6
- package/esm2015/lib/interaction/services/dialog-interaction.service.js +3 -1
- package/esm2015/lib/place/components/busy-overlay/busy-overlay.component.js +4 -4
- package/esm2015/lib/place/route/parameter-decorators.js +24 -3
- package/esm5/lib/animations/slideDownAndUpAnimation.js +2 -1
- package/esm5/lib/components/forms/abstract-input.component.js +20 -11
- package/esm5/lib/directives/focus-binding.directive.js +6 -6
- package/esm5/lib/interaction/services/dialog-interaction.service.js +3 -1
- package/esm5/lib/place/components/busy-overlay/busy-overlay.component.js +4 -4
- package/esm5/lib/place/route/parameter-decorators.js +24 -3
- package/fesm2015/coolon-angular-ui-powerups.js +48 -20
- package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/fesm5/coolon-angular-ui-powerups.js +52 -20
- package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
- package/lib/components/forms/abstract-input.component.d.ts +3 -2
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coolon-angular-ui-powerups.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@coolon/angular-ui-powerups/lib/components/disposable-component.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/abstract-input.component.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/number-input/number-input.component.ts","ng://@coolon/angular-ui-powerups/lib/directives/command.directive.ts","ng://@coolon/angular-ui-powerups/lib/directives/focus-binding.directive.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/string-input/string-input.component.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/password-input/password-input.component.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/select-input/select-input.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/interaction-context.ts","ng://@coolon/angular-ui-powerups/lib/interaction/abstract-activity.ts","ng://@coolon/angular-ui-powerups/lib/interaction/activity.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/alert-dialog/alert-dialog.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/activity-container/activity-container.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/activity-outlet/activity-outlet.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/services/dialog-interaction.service.ts","ng://@coolon/angular-ui-powerups/lib/interaction/interaction.module.ts","ng://@coolon/angular-ui-powerups/lib/place/components/busy-overlay/busy-overlay.component.ts","ng://@coolon/angular-ui-powerups/lib/place/components/empty-state/empty-state.component.ts","ng://@coolon/angular-ui-powerups/lib/place/components/nav/nav.component.ts","ng://@coolon/angular-ui-powerups/lib/place/place.service.ts","ng://@coolon/angular-ui-powerups/lib/place/components/place-outlet/place-outlet.component.ts","ng://@coolon/angular-ui-powerups/lib/place/place.module.ts","ng://@coolon/angular-ui-powerups/lib/angular-ui-powerups.module.ts","ng://@coolon/angular-ui-powerups/lib/animations/slideDownAndUpAnimation.ts","ng://@coolon/angular-ui-powerups/lib/components/types/dimension.class.ts","ng://@coolon/angular-ui-powerups/lib/components/types/point.class.ts","ng://@coolon/angular-ui-powerups/lib/components/types/bounds.class.ts","ng://@coolon/angular-ui-powerups/lib/components/resize-aware.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/alert.ts","ng://@coolon/angular-ui-powerups/lib/interaction/confirm.ts","ng://@coolon/angular-ui-powerups/lib/interaction/result.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/activity-outlet/activity-outlet-context.ts","ng://@coolon/angular-ui-powerups/lib/place/place.decorator.ts","ng://@coolon/angular-ui-powerups/lib/place/route/route-parameter-bindings.ts","ng://@coolon/angular-ui-powerups/lib/place/abstract-place-component.ts","ng://@coolon/angular-ui-powerups/lib/place/place-component.ts","ng://@coolon/angular-ui-powerups/lib/place/guards/leave-place.guard.ts","ng://@coolon/angular-ui-powerups/lib/place/route/route-parameter-sanitiser.ts","ng://@coolon/angular-ui-powerups/lib/place/guards/place-route.guard.ts","ng://@coolon/angular-ui-powerups/lib/place/route/json-types.ts","ng://@coolon/angular-ui-powerups/lib/place/route/parameter-decorators.ts","ng://@coolon/angular-ui-powerups/lib/place/route/parameter-definition.class.ts","ng://@coolon/angular-ui-powerups/lib/place/route/parameter-sanitiser.ts","ng://@coolon/angular-ui-powerups/lib/place/route/parameter-type.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\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 (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\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 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) : new P(function (resolve) { resolve(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 function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n 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}\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\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\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 __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\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 (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = 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","import {OnDestroy} from '@angular/core';\nimport {GarbageCollector} from '@coolon/pectin';\n\nexport class DisposableComponent extends GarbageCollector implements OnDestroy {\n\n ngOnDestroy(): void {\n this.dispose();\n }\n}\n","/* tslint:disable:no-input-rename */\nimport { EventEmitter, HostListener, Input, OnInit, Output } from '@angular/core';\nimport { FormControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { ErrorStateMatcher } from '@angular/material';\nimport {\n Command,\n Constant,\n ListModel,\n MutableListModel,\n MutableValueModel,\n UseDelegate,\n ValueModel\n} from '@coolon/pectin';\nimport { DisposableComponent } from '../disposable-component';\n\n\nconst EMPTY_ERRORS = new MutableListModel<string>().readonly;\n\nexport abstract class AbstractInputComponent<T> extends DisposableComponent implements OnInit {\n\n @Input() @UseDelegate()\n valueModel: MutableValueModel<T>;\n\n @Input() label: string;\n @Input() floatLabel: 'auto' | 'always' | 'never';\n @Input() hint: string;\n @Input() placeholder: string;\n\n @Input('command.focus') focusCommand: Command<any>;\n @Input('command.blur') blurCommand: Command<any>;\n @Input('command.enter') enterCommand: Command<any>;\n @Input('command.escape') escapeCommand: Command<any>;\n @Input('command.click') clickCommand: Command<any>;\n\n // TODO: fix this.\n // tslint:disable-next-line:no-output-native\n @Output() focus = new EventEmitter();\n // tslint:disable-next-line:no-output-native\n @Output() blur = new EventEmitter();\n // tslint:disable-next-line:no-output-native\n @Output() enterKey = new EventEmitter();\n // tslint:disable-next-line:no-output-native\n @Output() escapeKey = new EventEmitter();\n\n readonly errorStateMatcher: ErrorStateMatcher;\n\n @HostListener('click')\n notifyClick() {\n this.safelyInvoke(this.clickCommand);\n }\n\n @HostListener('focusin')\n notifyFocusIn() {\n this.safelyInvoke(this.focusCommand);\n this.focus.emit();\n }\n\n @HostListener('focusout')\n notifyFocusOut() {\n this.safelyInvoke(this.blurCommand);\n this.blur.emit();\n }\n\n\n notifyEnterKey() {\n this.safelyInvoke(this.enterCommand);\n this.enterKey.emit();\n }\n\n notifyEscapeKey() {\n this.safelyInvoke(this.escapeCommand);\n this.escapeKey.emit();\n }\n\n protected safelyInvoke(command: Command<any>) {\n if (command && command.enabled.value) {\n command.execute();\n }\n }\n\n constructor() {\n super();\n const self = this;\n this.errorStateMatcher = {\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\n return self.hasErrors();\n }\n };\n }\n\n ngOnInit(): void {\n // this._focused = this.valueModel['focused'] || new ValueHolder();\n }\n\n isEnabled(): boolean {\n return this.enabled.value;\n }\n\n get enabled(): ValueModel<boolean> {\n // @ts-ignore\n return (this.valueModel as any).enabled || Constant.TRUE;\n }\n\n hasErrors(): boolean {\n return !this.errorList.query().isEmpty();\n }\n\n get errorList(): ListModel<string> {\n return (this.valueModel as any).errorList || EMPTY_ERRORS;\n }\n\n get firstError() {\n return this.hasErrors() ? this.errorList.value[0] : null;\n }\n\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport {AbstractInputComponent} from '../abstract-input.component';\n\n\n@Component({\n selector: 'angular-ui-powerups-number-input',\n templateUrl: './number-input.component.html',\n styleUrls: ['./number-input.component.scss']\n})\nexport class NumberInputComponent extends AbstractInputComponent<string> implements OnInit {\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import { AfterViewInit, Directive, ElementRef, HostListener, Inject, Input, OnDestroy, OnInit } from '@angular/core';\nimport { assert, Command, Dsl, GarbageCollector, lang, UnaryCommand } from '@coolon/pectin';\n\n@Directive({\n // tslint:disable-next-line:directive-selector\n selector: '[pectinCommand]'\n})\nexport class CommandDirective<P = any> extends GarbageCollector implements OnInit, OnDestroy, AfterViewInit {\n\n @Input()\n pectinCommand: Command<any> | UnaryCommand<P>;\n\n private _commandParameter:P;\n private _commandParameterProvided = false;\n\n @Input()\n set commandParameter(value: P) {\n this._commandParameterProvided = true;\n this._commandParameter = value;\n }\n\n get commandParameter(): P {\n return this._commandParameter;\n }\n\n constructor(@Inject(ElementRef) private elementRef: ElementRef) {\n super();\n }\n\n ngOnInit(): void {\n assert.notNil(this.pectinCommand);\n if (this.pectinCommand instanceof UnaryCommand) {\n if (!this._commandParameterProvided) {\n lang.illegalState('UnaryCommands required the command parameter to be specified.');\n }\n } else {\n if (this._commandParameterProvided) {\n lang.illegalState('command parameters are only supported by UnaryCommands');\n }\n }\n }\n\n ngAfterViewInit(): void {\n // for some reason mat-buttons kills the disabled host binding. It works on a regular button but for now\n // we need to do this.\n const { chain } = Dsl.disposeWith(this);\n chain.value(this.pectinCommand.enabled).subscribe(enabled => {\n if (enabled) {\n this.elementRef.nativeElement.removeAttribute('disabled');\n if (this.elementRef.nativeElement.tagName === 'A') {\n this.elementRef.nativeElement.setAttribute('href', 'javascript:void');\n }\n } else {\n this.elementRef.nativeElement.setAttribute('disabled', 'disabled');\n if (this.elementRef.nativeElement.tagName === 'A') {\n this.elementRef.nativeElement.removeAttribute('href');\n }\n }\n });\n }\n\n ngOnDestroy(): void {\n this.dispose();\n }\n\n\n @HostListener('click', ['$event'])\n notifyClick($event: Event) {\n $event.preventDefault();\n $event.stopPropagation();\n if (this.pectinCommand.enabled.value) {\n if (this.pectinCommand instanceof UnaryCommand) {\n this.pectinCommand.withContext({ event: $event }).execute(this.commandParameter);\n } else {\n this.pectinCommand.withContext({ event: $event }).execute();\n }\n } else {\n console.warn('disabled command clicked, ignoring.');\n }\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {AfterViewInit, Directive, ElementRef, HostListener, Inject, Input, NgZone, OnInit} from '@angular/core';\nimport {Dsl, HasFocusTracking, Logger} from '@coolon/pectin';\nimport {DisposableComponent} from '../components/disposable-component';\n\n\n@Directive({\n // tslint:disable-next-line:directive-selector\n selector: '[pectinFocusBinding]'\n})\nexport class FocusBindingDirective extends DisposableComponent implements OnInit, AfterViewInit {\n\n private readonly document: Document;\n\n @Input() pectinFocusBinding: HasFocusTracking;\n @Input() focusBindingTarget: HTMLElement;\n\n @HostListener('focusin')\n onFocusIn() {\n if (this.hasBinding()) {\n this.pectinFocusBinding.focusCallbacks.notifyFocusIn();\n }\n }\n\n @HostListener('focusout')\n onFocusOut() {\n if (this.hasBinding()) {\n this.pectinFocusBinding.focusCallbacks.notifyFocusOut();\n }\n }\n\n constructor(@Inject(ElementRef) private readonly el: ElementRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(DOCUMENT) document: any) {\n super();\n // @see https://stackoverflow.com/questions/49513359/could-not-resolve-type-document-in-angular5/53715642#53715642\n this.document = document as Document;\n }\n\n ngOnInit(): void {\n }\n\n ngAfterViewInit(): void {\n // TODO: Make this also track the current enabled/disabled state.\n if (this.hasBinding()) {\n const {chain} = Dsl.disposeWith(this);\n chain.value(this.pectinFocusBinding.focused).subscribe((focused) => {\n if (focused && !this.alreadyHasFocus()) {\n this.tryAndFocus();\n }\n });\n } else {\n Logger.get(this).warn(\"pectinFocusBinding was nil\");\n }\n }\n\n private hasBinding() {\n return this.pectinFocusBinding && this.pectinFocusBinding.focused;\n }\n\n// Hook method for debugging via tracing.\n alreadyHasFocus() {\n return this.isFocused(this.focusTarget);\n }\n\n // Hook method for debugging via tracing.\n isFocused(element: Element): boolean {\n return this.document.activeElement === element;\n }\n\n tryAndFocus(retries: number = 5) {\n if (this.modelShouldStillHaveFocus() && this.canFocus()) {\n if (!this.alreadyHasFocus()) {\n this.focusTarget.focus();\n }\n // if we didn't get the focus we try again later.\n if (!this.alreadyHasFocus()) {\n Logger.get(this).log(`focus failed, trying ${retries} more times`);\n if (retries > 0) {\n // try again on the next paint\n // TODO: is there an angular way of doing this without calling a window function.\n requestAnimationFrame(() => {\n this.tryAndFocus(retries - 1);\n });\n } else {\n Logger.get(this).warn(`Tried to focus but gave up as the component wasn't enabled or visible.`);\n }\n }\n }\n }\n\n get focusTarget(): HTMLElement {\n return this.focusBindingTarget || this.el.nativeElement;\n }\n\n // Hook method for debugging via tracing.\n modelShouldStillHaveFocus() {\n return this.hasBinding() && this.pectinFocusBinding.focused.value;\n }\n\n // Hook method for debugging via tracing.\n canFocus(): boolean {\n const dimension = this.focusTarget.getBoundingClientRect();\n const hasSize = dimension.height >= 0 && dimension.height >= 0;\n // tslint:disable-next-line:no-string-literal\n return hasSize && !this.focusTarget['disabled'];\n }\n}\n","import {Component, OnInit} from '@angular/core';\nimport {AbstractInputComponent} from '../abstract-input.component';\n\n@Component({\n selector: 'angular-ui-powerups-string-input',\n templateUrl: './string-input.component.html',\n styleUrls: ['./string-input.component.scss']\n})\nexport class StringInputComponent extends AbstractInputComponent<string> implements OnInit {\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import {Component, OnInit} from '@angular/core';\nimport {AbstractInputComponent} from '../abstract-input.component';\n\n@Component({\n selector: 'angular-ui-powerups-password-input',\n templateUrl: './password-input.component.html',\n styleUrls: ['./password-input.component.scss']\n})\nexport class PasswordInputComponent extends AbstractInputComponent<string> implements OnInit {\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { ListModel, StoreInListModel, UseDelegate } from '@coolon/pectin';\nimport { AbstractInputComponent } from '../abstract-input.component';\n\n@Component({\n selector: 'angular-ui-powerups-select-input',\n templateUrl: './select-input.component.html',\n styleUrls: ['./select-input.component.scss']\n})\nexport class SelectInputComponent<T = any> extends AbstractInputComponent<T> implements OnInit {\n\n @Input() @UseDelegate()\n optionsModel: ListModel<T>;\n\n @Input() @StoreInListModel('optionsModel')\n options: T[];\n\n @Input()\n optionLabel: keyof T;\n\n @Input()\n optionLabelFormat: (option: T) => any = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import { InjectionToken } from '@angular/core';\nimport { Constructable } from '@coolon/pectin';\nimport { Activity } from './activity';\nimport { Alert } from './alert';\nimport { Confirm } from './confirm';\n\nexport const INTERACTION_CONTEXT = new InjectionToken<any>('InteractionContext');\n\nexport abstract class InteractionContext {\n\n abstract startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data?: D): Promise<R>;\n\n abstract confirm(confirm: Confirm): Promise<boolean>;\n\n abstract alert(alert: Alert): Promise<void>;\n}\n","import { DelegatingValueModel, EventListenerList, ValueModel } from '@coolon/pectin';\nimport { DisposableComponent } from '../components/disposable-component';\nimport { Activity } from './activity';\n\nexport class AbstractActivity<D, R, E = any> extends DisposableComponent implements Activity<D, R, E> {\n\n private readonly _doneListeners = new EventListenerList<Activity.CallBack<R>>();\n private readonly _cancelListeners = new EventListenerList<Activity.CallBack<E>>();\n private readonly _finishListeners = new EventListenerList<() => void>();\n\n private readonly _busyModel = new DelegatingValueModel<boolean>().withDefault(false);\n\n onDone(callback: Activity.CallBack<R>) {\n this._doneListeners.add(callback);\n }\n\n onCancel(callback: Activity.CallBack<E>) {\n this._cancelListeners.add(callback);\n }\n\n done(result?: R): Promise<any> {\n return this._doneListeners\n .fireAndWait(l => l(result))\n .finally(() => this.finalizeAndDispose());\n }\n\n cancel(error?: E): Promise<any> {\n return this._cancelListeners\n .fireAndWait(l => l(error))\n .finally(() => this.finalizeAndDispose());\n }\n\n private finalizeAndDispose() {\n // this._activeModel.value = false;\n this._finishListeners.fire(l => l());\n // this._interactionContext = null;\n // this._initialized = false;\n [\n this._finishListeners,\n this._doneListeners,\n this._cancelListeners\n ].forEach(l => l.dispose());\n }\n\n\n get busy(): ValueModel<boolean> {\n return this._busyModel.readonly;\n }\n\n busyWhile(busyModel: ValueModel<boolean>) {\n this._busyModel.setDelegate(busyModel);\n }\n\n isBusy() {\n return this._busyModel.value;\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { ValueModel } from '@coolon/pectin';\n\nexport const ACTIVITY_DATA = new InjectionToken<any>('InteractionActivityData');\n\nexport interface Activity<D, R, E = any> {\n readonly busy: ValueModel<boolean>;\n\n onDone(callback: Activity.CallBack<R>);\n\n onCancel(callback: Activity.CallBack<E>);\n\n}\n\nexport namespace Activity {\n export type CallBack<T> = (value: T) => void | Promise<any>;\n}\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { AbstractActivity } from '../../abstract-activity';\nimport { ACTIVITY_DATA } from '../../activity';\nimport { Alert } from '../../alert';\n\n@Component({\n selector: 'angular-ui-powerups-alert-dialog',\n templateUrl: './alert-dialog.component.html',\n styleUrls: ['./alert-dialog.component.scss']\n})\nexport class AlertDialogComponent extends AbstractActivity<Alert, void> implements OnInit {\n\n constructor(@Inject(ACTIVITY_DATA) readonly alert: Alert) {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { assert } from '@coolon/pectin';\nimport { AbstractActivity } from '../../abstract-activity';\nimport { ACTIVITY_DATA } from '../../activity';\nimport { Confirm } from '../../confirm';\n\n@Component({\n selector: 'angular-ui-powerups-confirmation-dialog',\n templateUrl: './confirmation-dialog.component.html',\n styleUrls: ['./confirmation-dialog.component.scss']\n})\nexport class ConfirmationDialogComponent extends AbstractActivity<Confirm, boolean> implements OnInit {\n\n constructor(@Inject(ACTIVITY_DATA) readonly confirm: Confirm) {\n super();\n assert.notNil(confirm);\n console.log(confirm);\n }\n\n ngOnInit() {\n }\n\n isDestructive(): boolean {\n return this.confirm.destructive && this.confirm.destructive();\n }\n}\n","import { AfterViewInit, Component, Input, OnInit, ViewChild } from '@angular/core';\nimport { MatTabGroup } from '@angular/material';\nimport { Constructable, Dsl, MutableListModel } from '@coolon/pectin';\nimport { Deferred } from '@coolon/pectin/lib/promise/deferred.class';\nimport { DisposableComponent } from '../../../components/disposable-component';\n\nimport { Activity } from '../../activity';\nimport { Alert } from '../../alert';\nimport { Confirm } from '../../confirm';\nimport { InteractionContext } from '../../interaction-context';\nimport { ActivityOutletContext } from '../activity-outlet/activity-outlet-context';\nimport { AlertDialogComponent } from '../alert-dialog/alert-dialog.component';\nimport { ConfirmationDialogComponent } from '../confirmation-dialog/confirmation-dialog.component';\n\n@Component({\n selector: 'angular-ui-powerups-activity-container',\n templateUrl: './activity-container.component.html',\n styleUrls: ['./activity-container.component.scss']\n})\nexport class ActivityContainerComponent extends DisposableComponent implements OnInit, AfterViewInit, InteractionContext {\n\n @Input()\n parentInteractionContext: InteractionContext;\n\n @Input()\n initialActivity: ActivityOutletContext<any, any, any>;\n\n @ViewChild('tabs', { static: true })\n tabs: MatTabGroup;\n\n readonly activityTabs = new MutableListModel<ActivityOutletContext<any, any, any>>();\n private obsoleteTabs: ActivityOutletContext<any, any, any>[] = [];\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n ngAfterViewInit(): void {\n const { observe } = Dsl.disposeWith(this);\n observe.valuesFrom(this.tabs.animationDone).subscribe(() => this.cleanUpTabs());\n }\n\n initialise<D, R, E>(options: ActivityContainerComponent.ActivityContext<D, R, E>) {\n this.initialActivity = {\n ...options,\n interactionContext: this\n };\n }\n\n startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data?: D): Promise<R> {\n const deferred = Deferred.defer<R>();\n const context = {\n interactionContext: this,\n activityClass: activityType,\n activityData: data,\n onDone: deferred.resolve,\n onCancel: deferred.reject\n };\n this.activityTabs.push(context);\n this.tabs.selectedIndex = this.activityTabs.length;\n return deferred.promise.finally(() => {\n this.obsoleteTabs.push(context);\n this.tabs.selectedIndex = this.activityTabs.length - 1;\n });\n }\n\n alert(alert: Alert): Promise<void> {\n return this.startActivity(AlertDialogComponent, alert);\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n return this.startActivity(ConfirmationDialogComponent, confirm);\n }\n\n private cleanUpTabs() {\n this.activityTabs.value = this.activityTabs.value.filter(tab => {\n return !this.obsoleteTabs.includes(tab);\n });\n }\n}\n\nexport namespace ActivityContainerComponent {\n\n export interface ActivityContext<D, R, E> {\n activityClass: Constructable<Activity<D, R, E>>,\n activityData: D,\n onDone: (result: R) => void,\n onCancel: (error: E) => void,\n }\n}\n","import {\n AfterViewInit,\n Component,\n ComponentFactoryResolver,\n ComponentRef,\n Injector,\n Input,\n OnInit,\n ViewContainerRef\n} from '@angular/core';\nimport { Constructable, lang } from '@coolon/pectin';\nimport { Activity, ACTIVITY_DATA } from '../../activity';\nimport { Alert } from '../../alert';\nimport { Confirm } from '../../confirm';\nimport { InteractionContext } from '../../interaction-context';\nimport { ActivityOutletContext } from './activity-outlet-context';\n\n@Component({\n selector: 'angular-ui-powerups-activity-outlet',\n template: '',\n styleUrls: ['./activity-outlet.component.scss']\n})\nexport class ActivityOutletComponent<D, R, E> implements OnInit, InteractionContext {\n\n @Input()\n interactionContext: InteractionContext;\n\n @Input()\n set activityContext(activityContext: ActivityOutletContext<D, R, E>) {\n this.loadActivity(activityContext);\n };\n\n private activityComponent: ComponentRef<Activity<D, R, E>>;\n\n constructor(\n private componentFactoryResolver: ComponentFactoryResolver,\n private viewContainerRef: ViewContainerRef,\n private injector: Injector\n ) {\n }\n\n ngOnInit() {\n }\n\n loadActivity(activityContext: ActivityOutletContext<D, R, E>) {\n const injector = Injector.create({\n providers: [\n {\n provide: InteractionContext,\n useValue: this\n },\n { provide: ACTIVITY_DATA, useValue: activityContext.activityData }\n ],\n parent: this.injector\n });\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(activityContext.activityClass);\n this.viewContainerRef.clear();\n this.activityComponent = this.viewContainerRef.createComponent(componentFactory, 0, injector);\n this.activityComponent.instance.onDone(activityContext.onDone);\n this.activityComponent.instance.onCancel(activityContext.onCancel);\n }\n\n alert(alert: Alert): Promise<void> {\n return this.interactionContext.alert(alert);\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n return this.interactionContext.confirm(confirm);\n }\n\n startActivity<D1, R1, E1>(activityType: Constructable<Activity<D1, R1, E1>>, data?: D1): Promise<R1> {\n return this.interactionContext.startActivity(activityType, data);\n }\n}\n\nexport namespace ActivityOutletComponent {\n\n export class OutletInteractionContext<D, R, E> implements InteractionContext {\n\n constructor(private readonly context: ActivityOutletContext<D, R, E>) {\n }\n\n alert(alert: Alert): Promise<void> {\n return lang.notImplemented();\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n return lang.notImplemented();\n }\n\n startActivity<D1, R1, E1>(activityType: Constructable<Activity<D1, R1, E1>>, data?: D1): Promise<R1> {\n return lang.notImplemented();\n }\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material';\nimport { Constructable } from '@coolon/pectin';\nimport { Activity } from '../activity';\nimport { Alert } from '../alert';\nimport { ActivityContainerComponent } from '../components/activity-container/activity-container.component';\nimport { AlertDialogComponent } from '../components/alert-dialog/alert-dialog.component';\nimport { ConfirmationDialogComponent } from '../components/confirmation-dialog/confirmation-dialog.component';\nimport { Confirm } from '../confirm';\nimport { InteractionContext } from '../interaction-context';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DialogInteractionService extends InteractionContext {\n\n constructor(private readonly dialogService: MatDialog) {\n super();\n }\n\n startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data?: D): Promise<R> {\n return this._startActivity(activityType, data);\n }\n\n private _startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data: D, disableClose: boolean = true) {\n const config = {\n data,\n disableClose,\n panelClass: 'dialog-interaction-service',\n autoFocus: false\n };\n const matDialogRef = this.dialogService.open(ActivityContainerComponent, config) as MatDialogRef<ActivityContainerComponent>;\n return new Promise<R>((resolve, reject) => {\n const activityContainer = matDialogRef.componentInstance;\n activityContainer.parentInteractionContext = this;\n activityContainer.initialise({\n activityClass: activityType,\n activityData: data,\n onDone(result) {\n resolve(result);\n matDialogRef.close(result);\n },\n onCancel(error) {\n reject(error);\n matDialogRef.close(error);\n }\n });\n\n matDialogRef.updateSize();\n });\n }\n\n alert(alert: Alert): Promise<void> {\n return this._startActivity(AlertDialogComponent, alert, false);\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n return this._startActivity(ConfirmationDialogComponent, confirm, true);\n }\n\n}\n","import { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule, MatDialogModule, MatTabsModule } from '@angular/material';\nimport { ActivityContainerComponent } from './components/activity-container/activity-container.component';\nimport { AlertDialogComponent } from './components/alert-dialog/alert-dialog.component';\nimport { ConfirmationDialogComponent } from './components/confirmation-dialog/confirmation-dialog.component';\nimport { ActivityOutletComponent } from './components/activity-outlet/activity-outlet.component';\nimport { DialogInteractionService } from './services/dialog-interaction.service';\n\n@NgModule({\n imports: [\n CommonModule,\n MatButtonModule,\n MatDialogModule,\n MatTabsModule,\n PortalModule\n ],\n declarations: [\n ActivityContainerComponent,\n ConfirmationDialogComponent,\n AlertDialogComponent,\n ActivityOutletComponent\n ],\n entryComponents: [\n ActivityContainerComponent,\n ConfirmationDialogComponent,\n AlertDialogComponent\n ],\n providers: [\n DialogInteractionService\n ]\n})\nexport class InteractionModule {\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { StoreInValueModel, UseDelegatingValueModel, ValueModel } from '@coolon/pectin';\n\n@Component({\n selector: 'aup-busy-overlay',\n templateUrl: `./busy-overlay.component.html`,\n styleUrls: ['./busy-overlay.component.scss']\n})\nexport class BusyOverlayComponent implements OnInit {\n\n @Input() @UseDelegatingValueModel()\n busyModel: ValueModel<boolean>;\n\n @Input() @StoreInValueModel('busyModel')\n busy: boolean;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'angular-ui-powerups-empty-state',\n template: `\n <div class=\"container\">\n <ng-content></ng-content>\n </div>\n `,\n styleUrls: ['./empty-state.component.scss']\n})\nexport class EmptyStateComponent implements OnInit {\n\n constructor() {\n }\n\n ngOnInit() {\n }\n}\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { PlaceComponent } from '../../place-component';\nimport { Place } from '../../place.decorator';\n\n@Component({\n selector: 'angular-ui-powerups-nav',\n templateUrl: './nav.component.html',\n styleUrls: ['./nav.component.scss']\n})\nexport class NavComponent implements OnInit {\n\n @Input()\n places: Place.Descriptor[];\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { MutableListModel, Trace } from '@coolon/pectin';\nimport { PlaceComponent } from './place-component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PlaceService {\n\n private _activePlaces = new MutableListModel<PlaceComponent>();\n\n constructor() {\n }\n\n get activePlaces() {\n return this._activePlaces.readonly;\n }\n\n @Trace()\n onActivate(place: PlaceComponent) {\n this._activePlaces.push(place);\n }\n\n @Trace()\n onDeactivate(place: PlaceComponent) {\n this._activePlaces.remove(place);\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { PlaceComponent } from '../../place-component';\nimport { PlaceService } from '../../place.service';\n\n@Component({\n selector: 'angular-ui-powerups-place-outlet',\n templateUrl: './place-outlet.component.html',\n styleUrls: ['./place-outlet.component.scss']\n})\nexport class PlaceOutletComponent implements OnInit {\n\n constructor(private readonly placeService: PlaceService) { }\n\n ngOnInit() {\n }\n\n onActivate($event: PlaceComponent) {\n this.placeService.onActivate($event);\n }\n onDeactivate($event: PlaceComponent) {\n this.placeService.onDeactivate($event);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatProgressSpinnerModule } from '@angular/material';\nimport { MatListModule } from '@angular/material/list';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterModule } from '@angular/router';\nimport { BusyOverlayComponent } from './components/busy-overlay/busy-overlay.component';\nimport { EmptyStateComponent } from './components/empty-state/empty-state.component';\nimport { NavComponent } from './components/nav/nav.component';\nimport { PlaceOutletComponent } from './components/place-outlet/place-outlet.component';\nimport { PlaceService } from './place.service';\n\n@NgModule({\n imports: [\n CommonModule,\n BrowserAnimationsModule,\n MatProgressSpinnerModule,\n RouterModule,\n MatTabsModule,\n MatListModule,\n MatTooltipModule\n ],\n declarations: [\n EmptyStateComponent,\n BusyOverlayComponent,\n PlaceOutletComponent,\n NavComponent\n ],\n entryComponents: [BusyOverlayComponent],\n exports: [\n BusyOverlayComponent,\n PlaceOutletComponent,\n EmptyStateComponent,\n NavComponent\n ],\n providers: [\n PlaceService\n ]\n})\nexport class PlaceModule {\n\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatFormFieldModule, MatInputModule, MatSelectModule } from '@angular/material';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { NumberInputComponent} from './components/forms/number-input/number-input.component';\nimport { CommandDirective } from './directives/command.directive';\nimport { FocusBindingDirective } from './directives/focus-binding.directive';\nimport { StringInputComponent } from './components/forms/string-input/string-input.component';\nimport { PasswordInputComponent } from './components/forms/password-input/password-input.component';\nimport { SelectInputComponent } from './components/forms/select-input/select-input.component';\nimport { InteractionModule } from './interaction/interaction.module';\nimport { PlaceModule } from './place/place.module';\n\n@NgModule({\n declarations: [\n CommandDirective,\n FocusBindingDirective,\n NumberInputComponent,\n StringInputComponent,\n PasswordInputComponent,\n SelectInputComponent,\n ],\n imports: [\n CommonModule,\n BrowserModule,\n BrowserAnimationsModule,\n FormsModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n PlaceModule,\n InteractionModule\n ],\n exports: [\n CommandDirective,\n FocusBindingDirective,\n NumberInputComponent,\n StringInputComponent,\n PasswordInputComponent,\n SelectInputComponent,\n InteractionModule,\n PlaceModule,\n ]\n\n})\nexport class AngularUiPowerupsModule {\n}\n","import { animate, AnimationStyleMetadata, style, transition, trigger } from '@angular/animations';\nimport { OptionsHelper } from '@coolon/pectin';\n\nconst defaultHiddenStyleDef = style({\n opacity: 0,\n 'height': '0',\n paddingTop: '0',\n paddingBottom: '0'\n});\n\nexport function slideDownAndUpAnimation(triggerName: string, options?: {\n duration?: string;\n hiddenStyleDef?: AnimationStyleMetadata;\n}) {\n const duration = OptionsHelper.get(options).getOptional('duration', '100ms');\n const hiddenStyleDef = OptionsHelper.get(options).getOptional('hiddenStyleDef', defaultHiddenStyleDef);\n return trigger(triggerName, [\n transition(':enter', [hiddenStyleDef, animate('100ms')]),\n transition(':leave', [animate('100ms', hiddenStyleDef)])\n ]);\n}\n\n// export function slideOutLeftAnimation(triggerName: string, duration:string = \"100ms\") {\n// return trigger(triggerName, [\n// state('true', style(\n// {\n// 'width': '*',\n// 'overflow': 'hidden',\n// 'opacity': '1'\n// })),\n// state('false', style({\n// 'width': '0px',\n// 'overflow': 'hidden',\n// 'opacity': '0'\n// })),\n// transition('* => *', [animate(duration)])\n// ]);\n// }\n","export class Dimension {\n constructor(readonly width: number, readonly height: number){}\n}\n","export class Point {\n\n static from(data: { x: number, y: number }) {\n return new Point(data.x, data.y);\n }\n\n constructor(readonly x: number, readonly y: number) {\n }\n\n translate(x: number, y: number): Point {\n return new Point(this.x + x, this.y + y);\n }\n}\n","import { Dimension } from './dimension.class';\nimport { Point } from './point.class';\n\nexport class Bounds extends Dimension {\n\n constructor(readonly top: number, readonly left: number, readonly width: number, readonly height: number) {\n super(width, height);\n }\n\n relativePositionOf(point: { x: number, y: number } | MouseEvent) {\n if (point instanceof MouseEvent) {\n return new Point(point.clientX - this.left, point.clientY - this.top);\n } else {\n return new Point(point.x - this.left, point.y - this.top);\n }\n }\n}\n\nexport namespace Bounds {\n export function ofElement(element: HTMLElement): Bounds {\n const rect = element.getBoundingClientRect();\n return new Bounds(rect.top, rect.left, rect.width, rect.height);\n }\n}\n\n","import {AfterViewInit, ElementRef, NgZone} from '@angular/core';\nimport {ValueHolder, ValueModel} from '@coolon/pectin';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport {DisposableComponent} from './disposable-component';\nimport {Bounds} from './types/bounds.class';\nimport {Point} from './types/point.class';\n\nexport class ResizeAwareComponent extends DisposableComponent implements AfterViewInit {\n\n private _boundsModel = new ValueHolder<Bounds>(new Bounds(0, 0, 0, 0));\n\n constructor(protected readonly elementRef: ElementRef, protected readonly ngZone: NgZone) {\n super();\n }\n\n ngAfterViewInit(): void {\n this.updateBounds();\n const element = this.elementRef.nativeElement;\n const ro = new ResizeObserver((entries, observer) => {\n this.ngZone.run(() => this.updateBounds());\n });\n ro.observe(element);\n this.onDispose(() => ro.disconnect());\n }\n\n get boundsModel(): ValueModel<Bounds> {\n return this._boundsModel.readonly;\n }\n\n get nativeElement() {\n return this.elementRef.nativeElement;\n }\n\n // TODO: Make this handle body scroll\n public relativePositionOf(point: { x: number, y: number } | MouseEvent): Point {\n return this.bounds.relativePositionOf(point);\n }\n\n get bounds(): Bounds {\n return this._boundsModel.value;\n }\n\n private updateBounds() {\n this._boundsModel.value = Bounds.ofElement(this.nativeElement);\n }\n\n\n}\n\nexport namespace ResizeAwareComponent {\n\n}\n","\nexport interface Alert {\n title?():string;\n content():string[];\n ok():string;\n}\n","import { Alert } from './alert';\n\nexport interface Confirm extends Alert {\n destructive?: () => boolean;\n cancel(): string;\n}\n","export interface Result<R, E> {\n // catch(callback: (error: E) => void): Result<R,E>;\n}\n\nexport namespace Result {\n export interface Callback<R,E> {\n then: <T>(result:R)=>T;\n catch: <T>(result:E)=>T;\n }\n\n}\n\n// const r:Result<string, number> = null;\n\n// r.catch(e => {}).then();\n\n","import { Constructable } from '@coolon/pectin';\nimport { Activity } from '../../activity';\nimport { InteractionContext } from '../../interaction-context';\n\n\nexport interface ActivityOutletContext<D, R, E> {\n interactionContext: InteractionContext,\n activityClass: Constructable<Activity<D, R, E>>,\n activityData: D,\n onDone: (result: R) => void,\n onCancel: (error: E) => void,\n}\n","import { assert, Constructable } from '@coolon/pectin';\nimport * as _ from 'lodash';\nimport 'reflect-metadata';\nimport { PlaceComponent } from './place-component';\n\nexport function Place(options: Place.Options) {\n return (target: Function) => {\n Reflect.defineMetadata('place.options', options, target);\n };\n}\n\nexport namespace Place {\n export interface Options {\n path: string,\n title: string,\n authenticate?: boolean // defaults to true\n // childOf?: Constructable<PlaceComponent>\n }\n\n export class Descriptor {\n readonly path: string;\n readonly authenticate: boolean;\n readonly title: string;\n\n constructor(placeClass: Constructable<PlaceComponent>, options: Options) {\n assert.notNil(options);\n this.path = options.path;\n this.title = options.title;\n this.authenticate = _.isNil(options.authenticate) || options.authenticate;\n }\n }\n\n export function getDescriptor(klass: Constructable<PlaceComponent>): Descriptor {\n const placeOptions = Reflect.getMetadata('place.options', klass);\n return new Descriptor(klass, placeOptions);\n }\n}\n","import { ActivatedRoute, Router } from '@angular/router';\nimport {\n Binding,\n Dsl,\n GarbageCollector,\n MutableHasValue,\n MutableValueModel,\n Trace,\n TransactionObserver\n} from '@coolon/pectin';\nimport { Klass } from '@coolon/typescript-utilities';\nimport { ParameterDefinition } from './parameter-definition.class';\n\ninterface ResolvedParameter<T> {\n parameterDef: ParameterDefinition<T>;\n resolvedValue: T;\n}\n\nclass ResolvedParameters {\n constructor(readonly parameters: ResolvedParameter<any>[]) {\n }\n\n get<T>(parameter: ParameterDefinition<T>): T {\n const resolved = this.parameters.find(p => p.parameterDef === parameter);\n return resolved ? resolved.resolvedValue : null;\n }\n\n replace<T>(parameter: ParameterDefinition<T>, value: T): ResolvedParameters {\n return new ResolvedParameters(this.parameters.filter(p => p.parameterDef !== parameter).concat({\n parameterDef: parameter,\n resolvedValue: value\n }));\n }\n\n @Trace()\n protected getFormattedRouteId() {\n const routeIdParam = this.getRouteIdParam();\n return routeIdParam ? routeIdParam.parameterDef.type.format(routeIdParam.resolvedValue) : null;\n }\n\n private getRouteIdParam() {\n return this.parameters.find(p => p.parameterDef.isRouteId);\n }\n\n @Trace()\n protected getFormattedParameters() {\n const params = {};\n const routeIdParam = this.parameters.filter(p => !p.parameterDef.isRouteId).forEach(p => {\n params[p.parameterDef.name] = p.parameterDef.type.format(p.resolvedValue);\n });\n return params;\n }\n\n hasRouteId() {\n return !!this.getRouteIdParam();\n }\n\n @Trace()\n redirect(previous: ResolvedParameters, router: Router, activatedRoute: ActivatedRoute) {\n const routeId = this.getFormattedRouteId();\n const relativePath = !!previous.hasRouteId() ? '..' : '.';\n const path = routeId ? [relativePath, routeId, this.getFormattedParameters()] : [relativePath, this.getFormattedParameters()];\n router.navigate(path, {\n relativeTo: activatedRoute\n });\n }\n}\n\nexport class RouteParameterBindings extends GarbageCollector {\n\n public readonly _incomingRouteChange = new MutableValueModel<boolean>(false);\n\n private txo: TransactionObserver;\n\n private readonly resolvedParameters = new MutableValueModel<ResolvedParameters>();\n\n constructor(private readonly component: any, private readonly router: Router, private readonly activatedRoute: ActivatedRoute) {\n super();\n const { chain, valueOf, before, when, after, observe } = Dsl.disposeWith(this);\n this.txo = new TransactionObserver();//.onEvent(e => console.log(e.toString()));\n\n const routeParameterDefs: ParameterDefinition<any>[] = Klass.get(component).getMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY);\n routeParameterDefs.forEach(parameter => this.installBinding(parameter));\n\n const incomingResolvedRouteParameters = observe.valuesFrom(activatedRoute.paramMap)\n .last()\n .map(params => {\n const result: ResolvedParameter<any>[] = [];\n routeParameterDefs.forEach(parameterDef => {\n let resolvedValue;\n if (parameterDef.isArray) {\n resolvedValue = params.getAll(parameterDef.name).map(v => parameterDef.type.parse(v));\n } else {\n resolvedValue = parameterDef.type.parse(params.get(parameterDef.name));\n }\n result.push({ parameterDef: parameterDef, resolvedValue: resolvedValue });\n\n });\n return new ResolvedParameters(result);\n });\n\n incomingResolvedRouteParameters.subscribe(resolvedParameters => {\n this._incomingRouteChange.value = true;\n this.resolvedParameters.value = resolvedParameters;\n this._incomingRouteChange.value = false;\n });\n\n when.valueOf(this.resolvedParameters).changes((params, previous) => {\n params.redirect(previous, router, activatedRoute);\n }, { unless: this.incomingRouteChange });\n\n this.txo.observe('incomingResolvedRouteParameters', incomingResolvedRouteParameters);\n this.txo.observe('this.routeIsChanging', this.incomingRouteChange);\n }\n\n get incomingRouteChange() {\n return this._incomingRouteChange.readonly;\n }\n\n protected installBinding<T>(parameter: ParameterDefinition<T>) {\n const model = this.getModelFor(parameter);\n this.txo.observe(parameter.propertyName, model);\n this.registerDisposable(new Binding(this.resolvedParameters, model, {\n toRight(parameters: ResolvedParameters): T {\n return parameters.get(parameter);\n },\n toLeft(value: T, currentParameters?: ResolvedParameters): ResolvedParameters {\n return currentParameters.replace(parameter, value);\n }\n }));\n }\n\n\n private getModelFor<T>(parameter: ParameterDefinition<T>): MutableHasValue<T> {\n return this.component[parameter.propertyName];\n }\n}\n\nexport namespace RouteParameterBindings {\n export const ROUTE_PARAMETER_LIST_KEY = Symbol('place:route:parameters');\n}\n","import { ActivatedRoute, Router } from '@angular/router';\n\nimport { Constructable, DelegatingValueModel, MutableValueModel, UseDelegate } from '@coolon/pectin';\nimport { Memoize } from '@typescript-plus/fast-memoize-decorator';\nimport { DisposableComponent } from '../components/disposable-component';\nimport { PlaceComponent } from './place-component';\nimport { Place } from './place.decorator';\nimport { RouteParameterBindings } from './route/route-parameter-bindings';\n\nexport class AbstractPlaceComponent extends DisposableComponent implements PlaceComponent {\n\n @UseDelegate()\n readonly titleModel: MutableValueModel<string>;\n\n private routeBindingMediator: RouteParameterBindings;\n\n constructor(protected activatedRoute: ActivatedRoute, router: Router) {\n super();\n this.routeBindingMediator = this.registerDisposable(new RouteParameterBindings(this, router, activatedRoute));\n // See https://coolon.atlassian.net/browse/PEC-59\n (this.titleModel as unknown as DelegatingValueModel<string>).setDefault(this.placeConfig.title);\n }\n\n @Memoize()\n get placeConfig(): Place.Descriptor {\n return Place.getDescriptor(this.constructor as any as Constructable<PlaceComponent>);\n }\n\n canDeactivate(): boolean | Promise<boolean> {\n return true;\n }\n\n}\n","import { ValueModel } from '@coolon/pectin';\n\nexport interface PlaceComponent {\n titleModel:ValueModel<string>;\n canDeactivate(): boolean | Promise<boolean>;\n}\n","import { Injectable, Injector } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanDeactivate, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { PlaceComponent } from '../place-component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LeavePlaceGuard implements CanDeactivate<PlaceComponent> {\n\n constructor(private router: Router, private injector: Injector) {\n }\n\n canDeactivate(component: PlaceComponent, currentRoute: ActivatedRouteSnapshot, currentState: RouterStateSnapshot, nextState?: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n return component.canDeactivate();\n }\n\n}\n","import { Injector } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { assert } from '@coolon/pectin';\nimport { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';\nimport { ParameterDefinition } from './parameter-definition.class';\nimport { ParameterSanitiser } from './parameter-sanitiser';\nimport * as _ from 'lodash';\n\nexport abstract class Sanitiser<T, S> {\n\n private initialValue: S;\n private _sanitisedValue: S;\n\n constructor(readonly parameterDef: ParameterDefinition<T>, readonly snapshot:ActivatedRouteSnapshot, readonly sanitiser: ParameterSanitiser<S>) {\n }\n\n isRouteId(): boolean {\n return this.parameterDef.isRouteId;\n }\n\n get valueChanged():boolean {\n return !_.isNil(this.initialValue) && this.hasChanged(this.initialValue, this.sanitisedValue);\n }\n\n get sanitisedValue():S {\n return this._sanitisedValue;\n }\n\n protected abstract readFrom(snapshot: ActivatedRouteSnapshot): S;\n protected abstract hasChanged(initialValue:S, sanitisedValue:S): boolean;\n\n abstract injectRouteParam(dest: {});\n\n async sanitize(): Promise<boolean> {\n if (this.sanitiser) {\n this.initialValue = this.readFrom(this.snapshot);\n this._sanitisedValue = await this.sanitiser.sanitise(this.initialValue);\n if (this.initialValue !== this._sanitisedValue) {\n return false;\n }\n }\n return true;\n }\n}\n\n\nexport class RouteParameterSanitiser {\n\n private readonly routeIdSanitiser: Sanitiser<any, any>;\n private readonly parameterSanitisers: Sanitiser<any, any>[] = [];\n\n constructor(readonly parameterDefs: ParameterDefinition<any>[], readonly snapshot: ActivatedRouteSnapshot, readonly injector: Injector) {\n const sanitisers = parameterDefs.map(def => {\n return def.isArray ?\n new Sanitiser.Array(def, snapshot, this.getSanitiser(def)) :\n new Sanitiser.Value(def, snapshot, this.getSanitiser(def));\n });\n this.routeIdSanitiser = sanitisers.find(p => p.isRouteId());\n this.parameterSanitisers = sanitisers.filter(p => !p.isRouteId());\n }\n\n async sanitise(): Promise<boolean> {\n if (this.routeIdSanitiser) {\n await this.routeIdSanitiser.sanitize();\n if (this.routeIdSanitiser.valueChanged) {\n // if the route id isn't ok we redirect immediately as the query params may need to be sanitised in the\n // context of the route id.\n return false;\n }\n }\n for (const sanitiser of this.parameterSanitisers) {\n await sanitiser.sanitize();\n }\n return !this.parameterSanitisers.find(s => s.valueChanged);\n }\n\n redirect(router: Router) {\n assert.isTruthy(this.parameterSanitisers.length !== 0);\n if (this.routeIdSanitiser.valueChanged) {\n return router.navigate(['..', this.routeIdSanitiser.sanitisedValue]);\n } else {\n const routeParams = {};\n this.parameterSanitisers.forEach(s => s.injectRouteParam(routeParams));\n return router.navigate(['.', routeParams]);\n }\n }\n\n @Memoize()\n private getSanitiser<T, S>(def: ParameterDefinition<T, S>): ParameterSanitiser<S> {\n return def.sanitiser ? this.injector.get<ParameterSanitiser<S>>(def.sanitiser, new def.sanitiser()) : null;\n }\n}\n\nexport namespace Sanitiser {\n\n export class Value<T> extends Sanitiser<T, T> {\n\n readFrom(snapshot: ActivatedRouteSnapshot): T {\n const rawValue = this.parameterDef.isRouteId ?\n snapshot.paramMap.get(this.parameterDef.name) :\n snapshot.queryParamMap.get(this.parameterDef.name);\n\n return this.parameterDef.type.parse(rawValue);\n }\n\n protected hasChanged(initialValue: T, sanitisedValue: T): boolean {\n return initialValue !== sanitisedValue;\n }\n\n injectRouteParam(dest: {}) {\n dest[this.parameterDef.name] = this.parameterDef.type.format(this.sanitisedValue);\n }\n\n }\n\n export class Array<T> extends Sanitiser<T, T[]> {\n\n readFrom(snapshot: ActivatedRouteSnapshot): T[] {\n const rawValues = snapshot.queryParamMap.getAll(this.parameterDef.name);\n return rawValues.map(value => this.parameterDef.type.parse(value));\n }\n\n protected hasChanged(initialValue: T[], sanitisedValue: T[]): boolean {\n return initialValue !== sanitisedValue;\n }\n\n\n injectRouteParam(dest: {}) {\n dest[this.parameterDef.name] = this.sanitisedValue.map(v => this.parameterDef.type.format(v));\n }\n\n\n }\n\n}\n","import { Injectable, Injector } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivate,\n CanDeactivate,\n Router,\n RouterStateSnapshot,\n UrlTree\n} from '@angular/router';\nimport { Trace } from '@coolon/pectin';\nimport { Klass } from '@coolon/typescript-utilities';\nimport { Observable } from 'rxjs';\nimport { PlaceComponent } from '../place-component';\nimport { RouteParameterBindings } from '../route/route-parameter-bindings';\nimport { RouteParameterSanitiser } from '../route/route-parameter-sanitiser';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PlaceRouteGuard implements CanActivate {\n\n constructor(private router: Router, private injector: Injector) {\n }\n\n @Trace()\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n const routeParameters = Klass.get(route.component).getMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY);\n const sanitiser = new RouteParameterSanitiser(routeParameters, route, this.injector);\n return sanitiser.sanitise().then(proceed => {\n if (!proceed) {\n sanitiser.redirect(this.router);\n }\n return proceed;\n });\n }\n\n}\n","export type JsonPrimitive = boolean | number | string;\nexport type AnyJson = JsonPrimitive | null | JsonArray | JsonMap;\nexport interface JsonArray extends Array<AnyJson> {}\nexport interface JsonMap { [key: string]: AnyJson; }\n\n","import { assert, Constructable, UseDelegate } from '@coolon/pectin';\nimport { Klass, Opts } from '@coolon/typescript-utilities';\nimport { ParameterDefinition } from './parameter-definition.class';\nimport { ParameterSanitiser } from './parameter-sanitiser';\nimport { ParameterType } from './parameter-type';\nimport { RouteParameterBindings } from './route-parameter-bindings';\n\nexport interface ParameterOptions<T> {\n as?: string;\n sanitiser?: Constructable<ParameterSanitiser<T>>;\n}\n\nexport interface ListParameterOptions<T> {\n as?: string;\n listSanitiser?: Constructable<ParameterSanitiser<T[]>>;\n}\n\nexport function RouteId<T extends string | number>(type: ParameterType<T>, options?: ParameterOptions<T>): PropertyDecorator {\n // assert.isTruthy(type.isValid());\n return (prototype: Object, propertyKey: string | symbol) => {\n const param = createDefinition(propertyKey, type, options, true);\n Klass.get(prototype).addToOwnMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY, param);\n UseDelegate()(prototype, propertyKey);\n };\n}\n\n/**\n * @deprecated use RouteParameter instead.\n * @param type\n * @param options\n */\nexport function QueryParameter<T>(type: ParameterType<T>, options?: ParameterOptions<T>): PropertyDecorator {\n return RouteParameter(type, options);\n}\n\nexport function RouteParameter<T>(type: ParameterType<T>, options?: ParameterOptions<T>): PropertyDecorator {\n // assert.isTruthy(type.isValid());\n return (prototype: Object, propertyKey: string | symbol) => {\n const param = createDefinition(propertyKey, type, options, false);\n Klass.get(prototype).addToOwnMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY, param);\n UseDelegate()(prototype, propertyKey);\n };\n}\n\n/**\n * @deprecated use RouteParameterList instead\n * @param elementType\n * @param options\n */\nexport function QueryParameterList<E>(elementType: ParameterType<E>, options?: ListParameterOptions<E>): PropertyDecorator {\n return RouteParameterList(elementType, options);\n}\n\nexport function RouteParameterList<E>(elementType: ParameterType<E>, options?: ListParameterOptions<E>): PropertyDecorator {\n // assert.isTruthy(type.isValid());\n return (prototype: Object, propertyKey: string | symbol) => {\n const param = createArrayDefinition(propertyKey, elementType, options);\n Klass.get(prototype).addToOwnMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY, param);\n UseDelegate()(prototype, propertyKey);\n };\n}\n\nfunction createDefinition<T>(propertyName: symbol | string, type: ParameterType<T>, options: ParameterOptions<T>, routeId: boolean) {\n const opts = Opts.get(options);\n const propertyNameAsString = assert.notNil(propertyName).toString();\n const def: ParameterDefinition<T> = {\n name: opts.getOptional('as', propertyNameAsString),\n propertyName: propertyNameAsString,\n type: assert.notNil(type),\n sanitiser: opts.getOptional('sanitiser', null),\n isRouteId: routeId,\n isArray: false\n };\n return def;\n}\n\nfunction createArrayDefinition<T>(propertyName: symbol | string, type: ParameterType<T>, options: ListParameterOptions<T>) {\n const opts = Opts.get(options);\n const propertyNameAsString = assert.notNil(propertyName).toString();\n\n const def: ParameterDefinition<T, T[]> = {\n name: opts.getOptional('as', propertyNameAsString),\n propertyName: propertyNameAsString,\n type: assert.notNil(type),\n sanitiser: opts.getOptional('listSanitiser', null),\n isRouteId: false,\n isArray: true\n };\n return def;\n}\n","import { Constructable } from '@coolon/pectin';\nimport { ParameterSanitiser } from './parameter-sanitiser';\nimport { ParameterType } from './parameter-type';\n\nexport interface ParameterDefinition<E,S=E> {\n readonly name: string;\n readonly propertyName: string;\n readonly type: ParameterType<E>;\n readonly sanitiser: Constructable<ParameterSanitiser<S>>;\n readonly isRouteId: boolean;\n readonly isArray: boolean;\n}\n","export interface ParameterSanitiser<T> {\n sanitise(value: T): T | Promise<T>;\n}\n","export interface ParameterType<T> {\n format(value: T): string;\n\n parse(value: string): T;\n}\n\nexport namespace ParameterType {\n\n class StringType implements ParameterType<string> {\n format(value: string): string {\n return value;\n }\n\n parse(value: string): string {\n return value;\n }\n }\n\n class NumberType implements ParameterType<number> {\n format(value: number): string {\n return `${value}`;\n }\n\n parse(value: string): number {\n return +value;\n }\n }\n\n export const STRING = new StringType();\n export const NUMBER = new NumberType();\n}\n"],"names":["tslib_1.__extends","GarbageCollector","MutableListModel","EventEmitter","Constant","Input","Output","HostListener","tslib_1.__decorate","UseDelegate","MutableValueModel","Component","assert","UnaryCommand","lang","Directive","ElementRef","Inject","Logger","NgZone","DOCUMENT","ListModel","StoreInListModel","InjectionToken","EventListenerList","DelegatingValueModel","Deferred","ViewChild","ActivityContainerComponent","Injector","ComponentFactoryResolver","ViewContainerRef","ActivityOutletComponent","Injectable","MatDialog","NgModule","CommonModule","MatButtonModule","MatDialogModule","MatTabsModule","PortalModule","UseDelegatingValueModel","ValueModel","StoreInValueModel","Trace","BrowserAnimationsModule","MatProgressSpinnerModule","RouterModule","MatListModule","MatTooltipModule","BrowserModule","FormsModule","MatInputModule","MatFormFieldModule","MatSelectModule","style","OptionsHelper","trigger","transition","animate","Bounds","ValueHolder","_.isNil","Router","ActivatedRoute","TransactionObserver","Klass","Binding","RouteParameterBindings","Memoize","Sanitiser","tslib_1.__values","ActivatedRouteSnapshot","RouterStateSnapshot","Opts","ParameterType"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"coolon-angular-ui-powerups.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@coolon/angular-ui-powerups/lib/components/disposable-component.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/abstract-input.component.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/number-input/number-input.component.ts","ng://@coolon/angular-ui-powerups/lib/directives/command.directive.ts","ng://@coolon/angular-ui-powerups/lib/directives/focus-binding.directive.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/string-input/string-input.component.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/password-input/password-input.component.ts","ng://@coolon/angular-ui-powerups/lib/components/forms/select-input/select-input.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/interaction-context.ts","ng://@coolon/angular-ui-powerups/lib/interaction/abstract-activity.ts","ng://@coolon/angular-ui-powerups/lib/interaction/activity.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/alert-dialog/alert-dialog.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/activity-container/activity-container.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/activity-outlet/activity-outlet.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/services/dialog-interaction.service.ts","ng://@coolon/angular-ui-powerups/lib/interaction/interaction.module.ts","ng://@coolon/angular-ui-powerups/lib/place/components/busy-overlay/busy-overlay.component.ts","ng://@coolon/angular-ui-powerups/lib/place/components/empty-state/empty-state.component.ts","ng://@coolon/angular-ui-powerups/lib/place/components/nav/nav.component.ts","ng://@coolon/angular-ui-powerups/lib/place/place.service.ts","ng://@coolon/angular-ui-powerups/lib/place/components/place-outlet/place-outlet.component.ts","ng://@coolon/angular-ui-powerups/lib/place/place.module.ts","ng://@coolon/angular-ui-powerups/lib/angular-ui-powerups.module.ts","ng://@coolon/angular-ui-powerups/lib/animations/slideDownAndUpAnimation.ts","ng://@coolon/angular-ui-powerups/lib/components/types/dimension.class.ts","ng://@coolon/angular-ui-powerups/lib/components/types/point.class.ts","ng://@coolon/angular-ui-powerups/lib/components/types/bounds.class.ts","ng://@coolon/angular-ui-powerups/lib/components/resize-aware.component.ts","ng://@coolon/angular-ui-powerups/lib/interaction/alert.ts","ng://@coolon/angular-ui-powerups/lib/interaction/confirm.ts","ng://@coolon/angular-ui-powerups/lib/interaction/result.ts","ng://@coolon/angular-ui-powerups/lib/interaction/components/activity-outlet/activity-outlet-context.ts","ng://@coolon/angular-ui-powerups/lib/place/place.decorator.ts","ng://@coolon/angular-ui-powerups/lib/place/route/route-parameter-bindings.ts","ng://@coolon/angular-ui-powerups/lib/place/abstract-place-component.ts","ng://@coolon/angular-ui-powerups/lib/place/place-component.ts","ng://@coolon/angular-ui-powerups/lib/place/guards/leave-place.guard.ts","ng://@coolon/angular-ui-powerups/lib/place/route/route-parameter-sanitiser.ts","ng://@coolon/angular-ui-powerups/lib/place/guards/place-route.guard.ts","ng://@coolon/angular-ui-powerups/lib/place/route/json-types.ts","ng://@coolon/angular-ui-powerups/lib/place/route/parameter-decorators.ts","ng://@coolon/angular-ui-powerups/lib/place/route/parameter-definition.class.ts","ng://@coolon/angular-ui-powerups/lib/place/route/parameter-sanitiser.ts","ng://@coolon/angular-ui-powerups/lib/place/route/parameter-type.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\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 (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\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 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) : new P(function (resolve) { resolve(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 function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n 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}\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\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\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 __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\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 (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = 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","import {OnDestroy} from '@angular/core';\nimport {GarbageCollector} from '@coolon/pectin';\n\nexport class DisposableComponent extends GarbageCollector implements OnDestroy {\n\n ngOnDestroy(): void {\n this.dispose();\n }\n}\n","/* tslint:disable:no-input-rename */\nimport { EventEmitter, HostListener, Input, OnInit, Output } from '@angular/core';\nimport { FormControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { ErrorStateMatcher } from '@angular/material';\nimport { Command, DelegatingFormValueModel, ListModel, UseDelegate, ValueModel } from '@coolon/pectin';\nimport { DisposableComponent } from '../disposable-component';\n\nexport abstract class AbstractInputComponent<T> extends DisposableComponent implements OnInit {\n\n readonly valueModel = new DelegatingFormValueModel<T>();\n\n @Input('valueModel') @UseDelegate()\n set userValueModel(model: ValueModel<T>) {\n this.valueModel.setDelegate(model);\n }\n\n @Input() label: string;\n @Input() floatLabel: 'auto' | 'always' | 'never';\n @Input() hint: string;\n @Input() placeholder: string;\n\n @Input('command.focus') focusCommand: Command<any>;\n @Input('command.blur') blurCommand: Command<any>;\n @Input('command.enter') enterCommand: Command<any>;\n @Input('command.escape') escapeCommand: Command<any>;\n @Input('command.click') clickCommand: Command<any>;\n\n // TODO: fix this.\n // tslint:disable-next-line:no-output-native\n @Output() focus = new EventEmitter();\n // tslint:disable-next-line:no-output-native\n @Output() blur = new EventEmitter();\n // tslint:disable-next-line:no-output-native\n @Output() enterKey = new EventEmitter();\n // tslint:disable-next-line:no-output-native\n @Output() escapeKey = new EventEmitter();\n\n readonly errorStateMatcher: ErrorStateMatcher;\n\n @HostListener('click')\n notifyClick() {\n this.safelyInvoke(this.clickCommand);\n }\n\n @HostListener('focusin')\n notifyFocusIn() {\n this.safelyInvoke(this.focusCommand);\n this.focus.emit();\n }\n\n @HostListener('focusout')\n notifyFocusOut() {\n this.safelyInvoke(this.blurCommand);\n this.blur.emit();\n }\n\n\n notifyEnterKey() {\n this.safelyInvoke(this.enterCommand);\n this.enterKey.emit();\n }\n\n notifyEscapeKey() {\n this.safelyInvoke(this.escapeCommand);\n this.escapeKey.emit();\n }\n\n protected safelyInvoke(command: Command<any>) {\n if (command && command.enabled.value) {\n command.execute();\n }\n }\n\n constructor() {\n super();\n const self = this;\n this.errorStateMatcher = {\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\n return self.hasErrors();\n }\n };\n }\n\n ngOnInit(): void {\n }\n\n isEnabled(): boolean {\n return this.enabled.value;\n }\n\n get enabled(): ValueModel<boolean> {\n return this.valueModel.enabled;\n }\n\n hasErrors(): boolean {\n return !this.errorList.query().isEmpty();\n }\n\n get errorList(): ListModel<string> {\n return this.valueModel.errorList;\n }\n\n get firstError() {\n return this.hasErrors() ? this.errorList.value[0] : null;\n }\n\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport {AbstractInputComponent} from '../abstract-input.component';\n\n\n@Component({\n selector: 'angular-ui-powerups-number-input',\n templateUrl: './number-input.component.html',\n styleUrls: ['./number-input.component.scss']\n})\nexport class NumberInputComponent extends AbstractInputComponent<string> implements OnInit {\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import { AfterViewInit, Directive, ElementRef, HostListener, Inject, Input, OnDestroy, OnInit } from '@angular/core';\nimport { assert, Command, Dsl, GarbageCollector, lang, UnaryCommand } from '@coolon/pectin';\n\n@Directive({\n // tslint:disable-next-line:directive-selector\n selector: '[pectinCommand]'\n})\nexport class CommandDirective<P = any> extends GarbageCollector implements OnInit, OnDestroy, AfterViewInit {\n\n @Input()\n pectinCommand: Command<any> | UnaryCommand<P>;\n\n private _commandParameter:P;\n private _commandParameterProvided = false;\n\n @Input()\n set commandParameter(value: P) {\n this._commandParameterProvided = true;\n this._commandParameter = value;\n }\n\n get commandParameter(): P {\n return this._commandParameter;\n }\n\n constructor(@Inject(ElementRef) private elementRef: ElementRef) {\n super();\n }\n\n ngOnInit(): void {\n assert.notNil(this.pectinCommand);\n if (this.pectinCommand instanceof UnaryCommand) {\n if (!this._commandParameterProvided) {\n lang.illegalState('UnaryCommands required the command parameter to be specified.');\n }\n } else {\n if (this._commandParameterProvided) {\n lang.illegalState('command parameters are only supported by UnaryCommands');\n }\n }\n }\n\n ngAfterViewInit(): void {\n // for some reason mat-buttons kills the disabled host binding. It works on a regular button but for now\n // we need to do this.\n const { chain } = Dsl.disposeWith(this);\n chain.value(this.pectinCommand.enabled).subscribe(enabled => {\n if (enabled) {\n this.elementRef.nativeElement.removeAttribute('disabled');\n if (this.elementRef.nativeElement.tagName === 'A') {\n this.elementRef.nativeElement.setAttribute('href', 'javascript:void');\n }\n } else {\n this.elementRef.nativeElement.setAttribute('disabled', 'disabled');\n if (this.elementRef.nativeElement.tagName === 'A') {\n this.elementRef.nativeElement.removeAttribute('href');\n }\n }\n });\n }\n\n ngOnDestroy(): void {\n this.dispose();\n }\n\n\n @HostListener('click', ['$event'])\n notifyClick($event: Event) {\n $event.preventDefault();\n $event.stopPropagation();\n if (this.pectinCommand.enabled.value) {\n if (this.pectinCommand instanceof UnaryCommand) {\n this.pectinCommand.withContext({ event: $event }).execute(this.commandParameter);\n } else {\n this.pectinCommand.withContext({ event: $event }).execute();\n }\n } else {\n console.warn('disabled command clicked, ignoring.');\n }\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {AfterViewInit, Directive, ElementRef, HostListener, Inject, Input, NgZone, OnInit} from '@angular/core';\nimport {Dsl, HasFocusTracking, Logger} from '@coolon/pectin';\nimport {DisposableComponent} from '../components/disposable-component';\n\n\n@Directive({\n // tslint:disable-next-line:directive-selector\n selector: '[pectinFocusBinding]'\n})\nexport class FocusBindingDirective extends DisposableComponent implements OnInit, AfterViewInit {\n\n private readonly document: Document;\n\n @Input() pectinFocusBinding: HasFocusTracking;\n @Input() focusBindingTarget: HTMLElement;\n\n @HostListener('focusin')\n onFocusIn() {\n if (this.hasBinding()) {\n this.pectinFocusBinding.focusContext.notifyFocusIn();\n }\n }\n\n @HostListener('focusout')\n onFocusOut() {\n if (this.hasBinding()) {\n this.pectinFocusBinding.focusContext.notifyFocusOut();\n }\n }\n\n constructor(@Inject(ElementRef) private readonly el: ElementRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(DOCUMENT) document: any) {\n super();\n // @see https://stackoverflow.com/questions/49513359/could-not-resolve-type-document-in-angular5/53715642#53715642\n this.document = document as Document;\n }\n\n ngOnInit(): void {\n }\n\n ngAfterViewInit(): void {\n // TODO: Make this also track the current enabled/disabled state.\n if (this.hasBinding()) {\n const {chain} = Dsl.disposeWith(this);\n chain.value(this.pectinFocusBinding.focusContext.focused).subscribe((focused) => {\n if (focused && !this.alreadyHasFocus()) {\n this.tryAndFocus();\n }\n });\n } else {\n Logger.get(this).warn(\"pectinFocusBinding was nil\");\n }\n }\n\n private hasBinding() {\n return !!this.pectinFocusBinding && !!this.pectinFocusBinding.focusContext;\n }\n\n// Hook method for debugging via tracing.\n alreadyHasFocus() {\n return this.isFocused(this.focusTarget);\n }\n\n // Hook method for debugging via tracing.\n isFocused(element: Element): boolean {\n return this.document.activeElement === element;\n }\n\n tryAndFocus(retries: number = 5) {\n if (this.modelShouldStillHaveFocus() && this.canFocus()) {\n if (!this.alreadyHasFocus()) {\n this.focusTarget.focus();\n }\n // if we didn't get the focus we try again later.\n if (!this.alreadyHasFocus()) {\n Logger.get(this).log(`focus failed, trying ${retries} more times`);\n if (retries > 0) {\n // try again on the next paint\n // TODO: is there an angular way of doing this without calling a window function.\n requestAnimationFrame(() => {\n this.tryAndFocus(retries - 1);\n });\n } else {\n Logger.get(this).warn(`Tried to focus but gave up as the component wasn't enabled or visible.`);\n }\n }\n }\n }\n\n get focusTarget(): HTMLElement {\n return this.focusBindingTarget || this.el.nativeElement;\n }\n\n // Hook method for debugging via tracing.\n modelShouldStillHaveFocus() {\n return this.hasBinding() && this.pectinFocusBinding.focusContext.focused.value;\n }\n\n // Hook method for debugging via tracing.\n canFocus(): boolean {\n const dimension = this.focusTarget.getBoundingClientRect();\n const hasSize = dimension.height >= 0 && dimension.height >= 0;\n // tslint:disable-next-line:no-string-literal\n return hasSize && !this.focusTarget['disabled'];\n }\n}\n","import {Component, OnInit} from '@angular/core';\nimport {AbstractInputComponent} from '../abstract-input.component';\n\n@Component({\n selector: 'angular-ui-powerups-string-input',\n templateUrl: './string-input.component.html',\n styleUrls: ['./string-input.component.scss']\n})\nexport class StringInputComponent extends AbstractInputComponent<string> implements OnInit {\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import {Component, OnInit} from '@angular/core';\nimport {AbstractInputComponent} from '../abstract-input.component';\n\n@Component({\n selector: 'angular-ui-powerups-password-input',\n templateUrl: './password-input.component.html',\n styleUrls: ['./password-input.component.scss']\n})\nexport class PasswordInputComponent extends AbstractInputComponent<string> implements OnInit {\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { ListModel, StoreInListModel, UseDelegate } from '@coolon/pectin';\nimport { AbstractInputComponent } from '../abstract-input.component';\n\n@Component({\n selector: 'angular-ui-powerups-select-input',\n templateUrl: './select-input.component.html',\n styleUrls: ['./select-input.component.scss']\n})\nexport class SelectInputComponent<T = any> extends AbstractInputComponent<T> implements OnInit {\n\n @Input() @UseDelegate()\n optionsModel: ListModel<T>;\n\n @Input() @StoreInListModel('optionsModel')\n options: T[];\n\n @Input()\n optionLabel: keyof T;\n\n @Input()\n optionLabelFormat: (option: T) => any = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import { InjectionToken } from '@angular/core';\nimport { Constructable } from '@coolon/pectin';\nimport { Activity } from './activity';\nimport { Alert } from './alert';\nimport { Confirm } from './confirm';\n\nexport const INTERACTION_CONTEXT = new InjectionToken<any>('InteractionContext');\n\nexport abstract class InteractionContext {\n\n abstract startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data?: D): Promise<R>;\n\n abstract confirm(confirm: Confirm): Promise<boolean>;\n\n abstract alert(alert: Alert): Promise<void>;\n}\n","import { DelegatingValueModel, EventListenerList, ValueModel } from '@coolon/pectin';\nimport { DisposableComponent } from '../components/disposable-component';\nimport { Activity } from './activity';\n\nexport class AbstractActivity<D, R, E = any> extends DisposableComponent implements Activity<D, R, E> {\n\n private readonly _doneListeners = new EventListenerList<Activity.CallBack<R>>();\n private readonly _cancelListeners = new EventListenerList<Activity.CallBack<E>>();\n private readonly _finishListeners = new EventListenerList<() => void>();\n\n private readonly _busyModel = new DelegatingValueModel<boolean>().withDefault(false);\n\n onDone(callback: Activity.CallBack<R>) {\n this._doneListeners.add(callback);\n }\n\n onCancel(callback: Activity.CallBack<E>) {\n this._cancelListeners.add(callback);\n }\n\n done(result?: R): Promise<any> {\n return this._doneListeners\n .fireAndWait(l => l(result))\n .finally(() => this.finalizeAndDispose());\n }\n\n cancel(error?: E): Promise<any> {\n return this._cancelListeners\n .fireAndWait(l => l(error))\n .finally(() => this.finalizeAndDispose());\n }\n\n private finalizeAndDispose() {\n // this._activeModel.value = false;\n this._finishListeners.fire(l => l());\n // this._interactionContext = null;\n // this._initialized = false;\n [\n this._finishListeners,\n this._doneListeners,\n this._cancelListeners\n ].forEach(l => l.dispose());\n }\n\n\n get busy(): ValueModel<boolean> {\n return this._busyModel.readonly;\n }\n\n busyWhile(busyModel: ValueModel<boolean>) {\n this._busyModel.setDelegate(busyModel);\n }\n\n isBusy() {\n return this._busyModel.value;\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { ValueModel } from '@coolon/pectin';\n\nexport const ACTIVITY_DATA = new InjectionToken<any>('InteractionActivityData');\n\nexport interface Activity<D, R, E = any> {\n readonly busy: ValueModel<boolean>;\n\n onDone(callback: Activity.CallBack<R>);\n\n onCancel(callback: Activity.CallBack<E>);\n\n}\n\nexport namespace Activity {\n export type CallBack<T> = (value: T) => void | Promise<any>;\n}\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { AbstractActivity } from '../../abstract-activity';\nimport { ACTIVITY_DATA } from '../../activity';\nimport { Alert } from '../../alert';\n\n@Component({\n selector: 'angular-ui-powerups-alert-dialog',\n templateUrl: './alert-dialog.component.html',\n styleUrls: ['./alert-dialog.component.scss']\n})\nexport class AlertDialogComponent extends AbstractActivity<Alert, void> implements OnInit {\n\n constructor(@Inject(ACTIVITY_DATA) readonly alert: Alert) {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { assert } from '@coolon/pectin';\nimport { AbstractActivity } from '../../abstract-activity';\nimport { ACTIVITY_DATA } from '../../activity';\nimport { Confirm } from '../../confirm';\n\n@Component({\n selector: 'angular-ui-powerups-confirmation-dialog',\n templateUrl: './confirmation-dialog.component.html',\n styleUrls: ['./confirmation-dialog.component.scss']\n})\nexport class ConfirmationDialogComponent extends AbstractActivity<Confirm, boolean> implements OnInit {\n\n constructor(@Inject(ACTIVITY_DATA) readonly confirm: Confirm) {\n super();\n assert.notNil(confirm);\n console.log(confirm);\n }\n\n ngOnInit() {\n }\n\n isDestructive(): boolean {\n return this.confirm.destructive && this.confirm.destructive();\n }\n}\n","import { AfterViewInit, Component, Input, OnInit, ViewChild } from '@angular/core';\nimport { MatTabGroup } from '@angular/material';\nimport { Constructable, Dsl, MutableListModel } from '@coolon/pectin';\nimport { Deferred } from '@coolon/pectin/lib/promise/deferred.class';\nimport { DisposableComponent } from '../../../components/disposable-component';\n\nimport { Activity } from '../../activity';\nimport { Alert } from '../../alert';\nimport { Confirm } from '../../confirm';\nimport { InteractionContext } from '../../interaction-context';\nimport { ActivityOutletContext } from '../activity-outlet/activity-outlet-context';\nimport { AlertDialogComponent } from '../alert-dialog/alert-dialog.component';\nimport { ConfirmationDialogComponent } from '../confirmation-dialog/confirmation-dialog.component';\n\n@Component({\n selector: 'angular-ui-powerups-activity-container',\n templateUrl: './activity-container.component.html',\n styleUrls: ['./activity-container.component.scss']\n})\nexport class ActivityContainerComponent extends DisposableComponent implements OnInit, AfterViewInit, InteractionContext {\n\n @Input()\n parentInteractionContext: InteractionContext;\n\n @Input()\n initialActivity: ActivityOutletContext<any, any, any>;\n\n @ViewChild('tabs', { static: true })\n tabs: MatTabGroup;\n\n readonly activityTabs = new MutableListModel<ActivityOutletContext<any, any, any>>();\n private obsoleteTabs: ActivityOutletContext<any, any, any>[] = [];\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n ngAfterViewInit(): void {\n const { observe } = Dsl.disposeWith(this);\n observe.valuesFrom(this.tabs.animationDone).subscribe(() => this.cleanUpTabs());\n }\n\n initialise<D, R, E>(options: ActivityContainerComponent.ActivityContext<D, R, E>) {\n this.initialActivity = {\n ...options,\n interactionContext: this\n };\n }\n\n startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data?: D): Promise<R> {\n const deferred = Deferred.defer<R>();\n const context = {\n interactionContext: this,\n activityClass: activityType,\n activityData: data,\n onDone: deferred.resolve,\n onCancel: deferred.reject\n };\n this.activityTabs.push(context);\n this.tabs.selectedIndex = this.activityTabs.length;\n return deferred.promise.finally(() => {\n this.obsoleteTabs.push(context);\n this.tabs.selectedIndex = this.activityTabs.length - 1;\n });\n }\n\n alert(alert: Alert): Promise<void> {\n return this.startActivity(AlertDialogComponent, alert);\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n return this.startActivity(ConfirmationDialogComponent, confirm);\n }\n\n private cleanUpTabs() {\n this.activityTabs.value = this.activityTabs.value.filter(tab => {\n return !this.obsoleteTabs.includes(tab);\n });\n }\n}\n\nexport namespace ActivityContainerComponent {\n\n export interface ActivityContext<D, R, E> {\n activityClass: Constructable<Activity<D, R, E>>,\n activityData: D,\n onDone: (result: R) => void,\n onCancel: (error: E) => void,\n }\n}\n","import {\n AfterViewInit,\n Component,\n ComponentFactoryResolver,\n ComponentRef,\n Injector,\n Input,\n OnInit,\n ViewContainerRef\n} from '@angular/core';\nimport { Constructable, lang } from '@coolon/pectin';\nimport { Activity, ACTIVITY_DATA } from '../../activity';\nimport { Alert } from '../../alert';\nimport { Confirm } from '../../confirm';\nimport { InteractionContext } from '../../interaction-context';\nimport { ActivityOutletContext } from './activity-outlet-context';\n\n@Component({\n selector: 'angular-ui-powerups-activity-outlet',\n template: '',\n styleUrls: ['./activity-outlet.component.scss']\n})\nexport class ActivityOutletComponent<D, R, E> implements OnInit, InteractionContext {\n\n @Input()\n interactionContext: InteractionContext;\n\n @Input()\n set activityContext(activityContext: ActivityOutletContext<D, R, E>) {\n this.loadActivity(activityContext);\n };\n\n private activityComponent: ComponentRef<Activity<D, R, E>>;\n\n constructor(\n private componentFactoryResolver: ComponentFactoryResolver,\n private viewContainerRef: ViewContainerRef,\n private injector: Injector\n ) {\n }\n\n ngOnInit() {\n }\n\n loadActivity(activityContext: ActivityOutletContext<D, R, E>) {\n const injector = Injector.create({\n providers: [\n {\n provide: InteractionContext,\n useValue: this\n },\n { provide: ACTIVITY_DATA, useValue: activityContext.activityData }\n ],\n parent: this.injector\n });\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(activityContext.activityClass);\n this.viewContainerRef.clear();\n this.activityComponent = this.viewContainerRef.createComponent(componentFactory, 0, injector);\n this.activityComponent.instance.onDone(activityContext.onDone);\n this.activityComponent.instance.onCancel(activityContext.onCancel);\n }\n\n alert(alert: Alert): Promise<void> {\n return this.interactionContext.alert(alert);\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n return this.interactionContext.confirm(confirm);\n }\n\n startActivity<D1, R1, E1>(activityType: Constructable<Activity<D1, R1, E1>>, data?: D1): Promise<R1> {\n return this.interactionContext.startActivity(activityType, data);\n }\n}\n\nexport namespace ActivityOutletComponent {\n\n export class OutletInteractionContext<D, R, E> implements InteractionContext {\n\n constructor(private readonly context: ActivityOutletContext<D, R, E>) {\n }\n\n alert(alert: Alert): Promise<void> {\n return lang.notImplemented();\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n return lang.notImplemented();\n }\n\n startActivity<D1, R1, E1>(activityType: Constructable<Activity<D1, R1, E1>>, data?: D1): Promise<R1> {\n return lang.notImplemented();\n }\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material';\nimport { Constructable } from '@coolon/pectin';\nimport { Activity } from '../activity';\nimport { Alert } from '../alert';\nimport { ActivityContainerComponent } from '../components/activity-container/activity-container.component';\nimport { AlertDialogComponent } from '../components/alert-dialog/alert-dialog.component';\nimport { ConfirmationDialogComponent } from '../components/confirmation-dialog/confirmation-dialog.component';\nimport { Confirm } from '../confirm';\nimport { InteractionContext } from '../interaction-context';\nimport { assert } from '@coolon/typescript-utilities';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DialogInteractionService extends InteractionContext {\n\n constructor(private readonly dialogService: MatDialog) {\n super();\n assert.notNil(dialogService);\n }\n\n startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data?: D): Promise<R> {\n return this._startActivity(activityType, data);\n }\n\n private _startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data: D, disableClose: boolean = true) {\n const config = {\n data,\n disableClose,\n panelClass: 'dialog-interaction-service',\n autoFocus: false\n };\n const matDialogRef = this.dialogService.open(ActivityContainerComponent, config) as MatDialogRef<ActivityContainerComponent>;\n return new Promise<R>((resolve, reject) => {\n const activityContainer = matDialogRef.componentInstance;\n activityContainer.parentInteractionContext = this;\n activityContainer.initialise({\n activityClass: activityType,\n activityData: data,\n onDone(result) {\n resolve(result);\n matDialogRef.close(result);\n },\n onCancel(error) {\n reject(error);\n matDialogRef.close(error);\n }\n });\n\n matDialogRef.updateSize();\n });\n }\n\n alert(alert: Alert): Promise<void> {\n return this._startActivity(AlertDialogComponent, alert, false);\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n return this._startActivity(ConfirmationDialogComponent, confirm, true);\n }\n\n}\n","import { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule, MatDialogModule, MatTabsModule } from '@angular/material';\nimport { ActivityContainerComponent } from './components/activity-container/activity-container.component';\nimport { AlertDialogComponent } from './components/alert-dialog/alert-dialog.component';\nimport { ConfirmationDialogComponent } from './components/confirmation-dialog/confirmation-dialog.component';\nimport { ActivityOutletComponent } from './components/activity-outlet/activity-outlet.component';\nimport { DialogInteractionService } from './services/dialog-interaction.service';\n\n@NgModule({\n imports: [\n CommonModule,\n MatButtonModule,\n MatDialogModule,\n MatTabsModule,\n PortalModule\n ],\n declarations: [\n ActivityContainerComponent,\n ConfirmationDialogComponent,\n AlertDialogComponent,\n ActivityOutletComponent\n ],\n entryComponents: [\n ActivityContainerComponent,\n ConfirmationDialogComponent,\n AlertDialogComponent\n ],\n providers: [\n DialogInteractionService\n ]\n})\nexport class InteractionModule {\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { StoreInValueModel, UseDelegate, ValueModel } from '@coolon/pectin';\n\n@Component({\n selector: 'angular-ui-powerups-busy-overlay',\n templateUrl: `./busy-overlay.component.html`,\n styleUrls: ['./busy-overlay.component.scss']\n})\nexport class BusyOverlayComponent implements OnInit {\n\n @Input() @UseDelegate()\n busyModel: ValueModel<boolean>;\n\n @Input() @StoreInValueModel('busyModel')\n busy: boolean;\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'angular-ui-powerups-empty-state',\n template: `\n <div class=\"container\">\n <ng-content></ng-content>\n </div>\n `,\n styleUrls: ['./empty-state.component.scss']\n})\nexport class EmptyStateComponent implements OnInit {\n\n constructor() {\n }\n\n ngOnInit() {\n }\n}\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { PlaceComponent } from '../../place-component';\nimport { Place } from '../../place.decorator';\n\n@Component({\n selector: 'angular-ui-powerups-nav',\n templateUrl: './nav.component.html',\n styleUrls: ['./nav.component.scss']\n})\nexport class NavComponent implements OnInit {\n\n @Input()\n places: Place.Descriptor[];\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { MutableListModel, Trace } from '@coolon/pectin';\nimport { PlaceComponent } from './place-component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PlaceService {\n\n private _activePlaces = new MutableListModel<PlaceComponent>();\n\n constructor() {\n }\n\n get activePlaces() {\n return this._activePlaces.readonly;\n }\n\n @Trace()\n onActivate(place: PlaceComponent) {\n this._activePlaces.push(place);\n }\n\n @Trace()\n onDeactivate(place: PlaceComponent) {\n this._activePlaces.remove(place);\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { PlaceComponent } from '../../place-component';\nimport { PlaceService } from '../../place.service';\n\n@Component({\n selector: 'angular-ui-powerups-place-outlet',\n templateUrl: './place-outlet.component.html',\n styleUrls: ['./place-outlet.component.scss']\n})\nexport class PlaceOutletComponent implements OnInit {\n\n constructor(private readonly placeService: PlaceService) { }\n\n ngOnInit() {\n }\n\n onActivate($event: PlaceComponent) {\n this.placeService.onActivate($event);\n }\n onDeactivate($event: PlaceComponent) {\n this.placeService.onDeactivate($event);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatProgressSpinnerModule } from '@angular/material';\nimport { MatListModule } from '@angular/material/list';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterModule } from '@angular/router';\nimport { BusyOverlayComponent } from './components/busy-overlay/busy-overlay.component';\nimport { EmptyStateComponent } from './components/empty-state/empty-state.component';\nimport { NavComponent } from './components/nav/nav.component';\nimport { PlaceOutletComponent } from './components/place-outlet/place-outlet.component';\nimport { PlaceService } from './place.service';\n\n@NgModule({\n imports: [\n CommonModule,\n BrowserAnimationsModule,\n MatProgressSpinnerModule,\n RouterModule,\n MatTabsModule,\n MatListModule,\n MatTooltipModule\n ],\n declarations: [\n EmptyStateComponent,\n BusyOverlayComponent,\n PlaceOutletComponent,\n NavComponent\n ],\n entryComponents: [BusyOverlayComponent],\n exports: [\n BusyOverlayComponent,\n PlaceOutletComponent,\n EmptyStateComponent,\n NavComponent\n ],\n providers: [\n PlaceService\n ]\n})\nexport class PlaceModule {\n\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatFormFieldModule, MatInputModule, MatSelectModule } from '@angular/material';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { NumberInputComponent} from './components/forms/number-input/number-input.component';\nimport { CommandDirective } from './directives/command.directive';\nimport { FocusBindingDirective } from './directives/focus-binding.directive';\nimport { StringInputComponent } from './components/forms/string-input/string-input.component';\nimport { PasswordInputComponent } from './components/forms/password-input/password-input.component';\nimport { SelectInputComponent } from './components/forms/select-input/select-input.component';\nimport { InteractionModule } from './interaction/interaction.module';\nimport { PlaceModule } from './place/place.module';\n\n@NgModule({\n declarations: [\n CommandDirective,\n FocusBindingDirective,\n NumberInputComponent,\n StringInputComponent,\n PasswordInputComponent,\n SelectInputComponent,\n ],\n imports: [\n CommonModule,\n BrowserModule,\n BrowserAnimationsModule,\n FormsModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n PlaceModule,\n InteractionModule\n ],\n exports: [\n CommandDirective,\n FocusBindingDirective,\n NumberInputComponent,\n StringInputComponent,\n PasswordInputComponent,\n SelectInputComponent,\n InteractionModule,\n PlaceModule,\n ]\n\n})\nexport class AngularUiPowerupsModule {\n}\n","import { animate, AnimationStyleMetadata, style, transition, trigger } from '@angular/animations';\nimport { OptionsHelper } from '@coolon/pectin';\n\nconst defaultHiddenStyleDef = style({\n opacity: 0,\n 'height': '0',\n paddingTop: '0',\n paddingBottom: '0'\n});\n\nexport function slideDownAndUpAnimation(triggerName: string, options?: {\n duration?: string;\n hiddenStyleDef?: AnimationStyleMetadata;\n}) {\n // SEE to fix this: https://github.com/angular/angular/issues/15587#issuecomment-351510501\n const duration = OptionsHelper.get(options).getOptional('duration', '100ms');\n const hiddenStyleDef = OptionsHelper.get(options).getOptional('hiddenStyleDef', defaultHiddenStyleDef);\n return trigger(triggerName, [\n transition(':enter', [hiddenStyleDef, animate('100ms')]),\n transition(':leave', [animate('100ms', hiddenStyleDef)])\n ]);\n}\n\n// export function slideOutLeftAnimation(triggerName: string, duration:string = \"100ms\") {\n// return trigger(triggerName, [\n// state('true', style(\n// {\n// 'width': '*',\n// 'overflow': 'hidden',\n// 'opacity': '1'\n// })),\n// state('false', style({\n// 'width': '0px',\n// 'overflow': 'hidden',\n// 'opacity': '0'\n// })),\n// transition('* => *', [animate(duration)])\n// ]);\n// }\n","export class Dimension {\n constructor(readonly width: number, readonly height: number){}\n}\n","export class Point {\n\n static from(data: { x: number, y: number }) {\n return new Point(data.x, data.y);\n }\n\n constructor(readonly x: number, readonly y: number) {\n }\n\n translate(x: number, y: number): Point {\n return new Point(this.x + x, this.y + y);\n }\n}\n","import { Dimension } from './dimension.class';\nimport { Point } from './point.class';\n\nexport class Bounds extends Dimension {\n\n constructor(readonly top: number, readonly left: number, readonly width: number, readonly height: number) {\n super(width, height);\n }\n\n relativePositionOf(point: { x: number, y: number } | MouseEvent) {\n if (point instanceof MouseEvent) {\n return new Point(point.clientX - this.left, point.clientY - this.top);\n } else {\n return new Point(point.x - this.left, point.y - this.top);\n }\n }\n}\n\nexport namespace Bounds {\n export function ofElement(element: HTMLElement): Bounds {\n const rect = element.getBoundingClientRect();\n return new Bounds(rect.top, rect.left, rect.width, rect.height);\n }\n}\n\n","import {AfterViewInit, ElementRef, NgZone} from '@angular/core';\nimport {ValueHolder, ValueModel} from '@coolon/pectin';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport {DisposableComponent} from './disposable-component';\nimport {Bounds} from './types/bounds.class';\nimport {Point} from './types/point.class';\n\nexport class ResizeAwareComponent extends DisposableComponent implements AfterViewInit {\n\n private _boundsModel = new ValueHolder<Bounds>(new Bounds(0, 0, 0, 0));\n\n constructor(protected readonly elementRef: ElementRef, protected readonly ngZone: NgZone) {\n super();\n }\n\n ngAfterViewInit(): void {\n this.updateBounds();\n const element = this.elementRef.nativeElement;\n const ro = new ResizeObserver((entries, observer) => {\n this.ngZone.run(() => this.updateBounds());\n });\n ro.observe(element);\n this.onDispose(() => ro.disconnect());\n }\n\n get boundsModel(): ValueModel<Bounds> {\n return this._boundsModel.readonly;\n }\n\n get nativeElement() {\n return this.elementRef.nativeElement;\n }\n\n // TODO: Make this handle body scroll\n public relativePositionOf(point: { x: number, y: number } | MouseEvent): Point {\n return this.bounds.relativePositionOf(point);\n }\n\n get bounds(): Bounds {\n return this._boundsModel.value;\n }\n\n private updateBounds() {\n this._boundsModel.value = Bounds.ofElement(this.nativeElement);\n }\n\n\n}\n\nexport namespace ResizeAwareComponent {\n\n}\n","\nexport interface Alert {\n title?():string;\n content():string[];\n ok():string;\n}\n","import { Alert } from './alert';\n\nexport interface Confirm extends Alert {\n destructive?: () => boolean;\n cancel(): string;\n}\n","export interface Result<R, E> {\n // catch(callback: (error: E) => void): Result<R,E>;\n}\n\nexport namespace Result {\n export interface Callback<R,E> {\n then: <T>(result:R)=>T;\n catch: <T>(result:E)=>T;\n }\n\n}\n\n// const r:Result<string, number> = null;\n\n// r.catch(e => {}).then();\n\n","import { Constructable } from '@coolon/pectin';\nimport { Activity } from '../../activity';\nimport { InteractionContext } from '../../interaction-context';\n\n\nexport interface ActivityOutletContext<D, R, E> {\n interactionContext: InteractionContext,\n activityClass: Constructable<Activity<D, R, E>>,\n activityData: D,\n onDone: (result: R) => void,\n onCancel: (error: E) => void,\n}\n","import { assert, Constructable } from '@coolon/pectin';\nimport * as _ from 'lodash';\nimport 'reflect-metadata';\nimport { PlaceComponent } from './place-component';\n\nexport function Place(options: Place.Options) {\n return (target: Function) => {\n Reflect.defineMetadata('place.options', options, target);\n };\n}\n\nexport namespace Place {\n export interface Options {\n path: string,\n title: string,\n authenticate?: boolean // defaults to true\n // childOf?: Constructable<PlaceComponent>\n }\n\n export class Descriptor {\n readonly path: string;\n readonly authenticate: boolean;\n readonly title: string;\n\n constructor(placeClass: Constructable<PlaceComponent>, options: Options) {\n assert.notNil(options);\n this.path = options.path;\n this.title = options.title;\n this.authenticate = _.isNil(options.authenticate) || options.authenticate;\n }\n }\n\n export function getDescriptor(klass: Constructable<PlaceComponent>): Descriptor {\n const placeOptions = Reflect.getMetadata('place.options', klass);\n return new Descriptor(klass, placeOptions);\n }\n}\n","import { ActivatedRoute, Router } from '@angular/router';\nimport {\n Binding,\n Dsl,\n GarbageCollector,\n MutableHasValue,\n MutableValueModel,\n Trace,\n TransactionObserver\n} from '@coolon/pectin';\nimport { Klass } from '@coolon/typescript-utilities';\nimport { ParameterDefinition } from './parameter-definition.class';\n\ninterface ResolvedParameter<T> {\n parameterDef: ParameterDefinition<T>;\n resolvedValue: T;\n}\n\nclass ResolvedParameters {\n constructor(readonly parameters: ResolvedParameter<any>[]) {\n }\n\n get<T>(parameter: ParameterDefinition<T>): T {\n const resolved = this.parameters.find(p => p.parameterDef === parameter);\n return resolved ? resolved.resolvedValue : null;\n }\n\n replace<T>(parameter: ParameterDefinition<T>, value: T): ResolvedParameters {\n return new ResolvedParameters(this.parameters.filter(p => p.parameterDef !== parameter).concat({\n parameterDef: parameter,\n resolvedValue: value\n }));\n }\n\n @Trace()\n protected getFormattedRouteId() {\n const routeIdParam = this.getRouteIdParam();\n return routeIdParam ? routeIdParam.parameterDef.type.format(routeIdParam.resolvedValue) : null;\n }\n\n private getRouteIdParam() {\n return this.parameters.find(p => p.parameterDef.isRouteId);\n }\n\n @Trace()\n protected getFormattedParameters() {\n const params = {};\n const routeIdParam = this.parameters.filter(p => !p.parameterDef.isRouteId).forEach(p => {\n params[p.parameterDef.name] = p.parameterDef.type.format(p.resolvedValue);\n });\n return params;\n }\n\n hasRouteId() {\n return !!this.getRouteIdParam();\n }\n\n @Trace()\n redirect(previous: ResolvedParameters, router: Router, activatedRoute: ActivatedRoute) {\n const routeId = this.getFormattedRouteId();\n const relativePath = !!previous.hasRouteId() ? '..' : '.';\n const path = routeId ? [relativePath, routeId, this.getFormattedParameters()] : [relativePath, this.getFormattedParameters()];\n router.navigate(path, {\n relativeTo: activatedRoute\n });\n }\n}\n\nexport class RouteParameterBindings extends GarbageCollector {\n\n public readonly _incomingRouteChange = new MutableValueModel<boolean>(false);\n\n private txo: TransactionObserver;\n\n private readonly resolvedParameters = new MutableValueModel<ResolvedParameters>();\n\n constructor(private readonly component: any, private readonly router: Router, private readonly activatedRoute: ActivatedRoute) {\n super();\n const { chain, valueOf, before, when, after, observe } = Dsl.disposeWith(this);\n this.txo = new TransactionObserver();//.onEvent(e => console.log(e.toString()));\n\n const routeParameterDefs: ParameterDefinition<any>[] = Klass.get(component).getMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY);\n routeParameterDefs.forEach(parameter => this.installBinding(parameter));\n\n const incomingResolvedRouteParameters = observe.valuesFrom(activatedRoute.paramMap)\n .last()\n .map(params => {\n const result: ResolvedParameter<any>[] = [];\n routeParameterDefs.forEach(parameterDef => {\n let resolvedValue;\n if (parameterDef.isArray) {\n resolvedValue = params.getAll(parameterDef.name).map(v => parameterDef.type.parse(v));\n } else {\n resolvedValue = parameterDef.type.parse(params.get(parameterDef.name));\n }\n result.push({ parameterDef: parameterDef, resolvedValue: resolvedValue });\n\n });\n return new ResolvedParameters(result);\n });\n\n incomingResolvedRouteParameters.subscribe(resolvedParameters => {\n this._incomingRouteChange.value = true;\n this.resolvedParameters.value = resolvedParameters;\n this._incomingRouteChange.value = false;\n });\n\n when.valueOf(this.resolvedParameters).changes((params, previous) => {\n params.redirect(previous, router, activatedRoute);\n }, { unless: this.incomingRouteChange });\n\n this.txo.observe('incomingResolvedRouteParameters', incomingResolvedRouteParameters);\n this.txo.observe('this.routeIsChanging', this.incomingRouteChange);\n }\n\n get incomingRouteChange() {\n return this._incomingRouteChange.readonly;\n }\n\n protected installBinding<T>(parameter: ParameterDefinition<T>) {\n const model = this.getModelFor(parameter);\n this.txo.observe(parameter.propertyName, model);\n this.registerDisposable(new Binding(this.resolvedParameters, model, {\n toRight(parameters: ResolvedParameters): T {\n return parameters.get(parameter);\n },\n toLeft(value: T, currentParameters?: ResolvedParameters): ResolvedParameters {\n return currentParameters.replace(parameter, value);\n }\n }));\n }\n\n\n private getModelFor<T>(parameter: ParameterDefinition<T>): MutableHasValue<T> {\n return this.component[parameter.propertyName];\n }\n}\n\nexport namespace RouteParameterBindings {\n export const ROUTE_PARAMETER_LIST_KEY = Symbol('place:route:parameters');\n}\n","import { ActivatedRoute, Router } from '@angular/router';\n\nimport { Constructable, DelegatingValueModel, MutableValueModel, UseDelegate } from '@coolon/pectin';\nimport { Memoize } from '@typescript-plus/fast-memoize-decorator';\nimport { DisposableComponent } from '../components/disposable-component';\nimport { PlaceComponent } from './place-component';\nimport { Place } from './place.decorator';\nimport { RouteParameterBindings } from './route/route-parameter-bindings';\n\nexport class AbstractPlaceComponent extends DisposableComponent implements PlaceComponent {\n\n @UseDelegate()\n readonly titleModel: MutableValueModel<string>;\n\n private routeBindingMediator: RouteParameterBindings;\n\n constructor(protected activatedRoute: ActivatedRoute, router: Router) {\n super();\n this.routeBindingMediator = this.registerDisposable(new RouteParameterBindings(this, router, activatedRoute));\n // See https://coolon.atlassian.net/browse/PEC-59\n (this.titleModel as unknown as DelegatingValueModel<string>).setDefault(this.placeConfig.title);\n }\n\n @Memoize()\n get placeConfig(): Place.Descriptor {\n return Place.getDescriptor(this.constructor as any as Constructable<PlaceComponent>);\n }\n\n canDeactivate(): boolean | Promise<boolean> {\n return true;\n }\n\n}\n","import { ValueModel } from '@coolon/pectin';\n\nexport interface PlaceComponent {\n titleModel:ValueModel<string>;\n canDeactivate(): boolean | Promise<boolean>;\n}\n","import { Injectable, Injector } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanDeactivate, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { PlaceComponent } from '../place-component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LeavePlaceGuard implements CanDeactivate<PlaceComponent> {\n\n constructor(private router: Router, private injector: Injector) {\n }\n\n canDeactivate(component: PlaceComponent, currentRoute: ActivatedRouteSnapshot, currentState: RouterStateSnapshot, nextState?: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n return component.canDeactivate();\n }\n\n}\n","import { Injector } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { assert } from '@coolon/pectin';\nimport { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';\nimport { ParameterDefinition } from './parameter-definition.class';\nimport { ParameterSanitiser } from './parameter-sanitiser';\nimport * as _ from 'lodash';\n\nexport abstract class Sanitiser<T, S> {\n\n private initialValue: S;\n private _sanitisedValue: S;\n\n constructor(readonly parameterDef: ParameterDefinition<T>, readonly snapshot:ActivatedRouteSnapshot, readonly sanitiser: ParameterSanitiser<S>) {\n }\n\n isRouteId(): boolean {\n return this.parameterDef.isRouteId;\n }\n\n get valueChanged():boolean {\n return !_.isNil(this.initialValue) && this.hasChanged(this.initialValue, this.sanitisedValue);\n }\n\n get sanitisedValue():S {\n return this._sanitisedValue;\n }\n\n protected abstract readFrom(snapshot: ActivatedRouteSnapshot): S;\n protected abstract hasChanged(initialValue:S, sanitisedValue:S): boolean;\n\n abstract injectRouteParam(dest: {});\n\n async sanitize(): Promise<boolean> {\n if (this.sanitiser) {\n this.initialValue = this.readFrom(this.snapshot);\n this._sanitisedValue = await this.sanitiser.sanitise(this.initialValue);\n if (this.initialValue !== this._sanitisedValue) {\n return false;\n }\n }\n return true;\n }\n}\n\n\nexport class RouteParameterSanitiser {\n\n private readonly routeIdSanitiser: Sanitiser<any, any>;\n private readonly parameterSanitisers: Sanitiser<any, any>[] = [];\n\n constructor(readonly parameterDefs: ParameterDefinition<any>[], readonly snapshot: ActivatedRouteSnapshot, readonly injector: Injector) {\n const sanitisers = parameterDefs.map(def => {\n return def.isArray ?\n new Sanitiser.Array(def, snapshot, this.getSanitiser(def)) :\n new Sanitiser.Value(def, snapshot, this.getSanitiser(def));\n });\n this.routeIdSanitiser = sanitisers.find(p => p.isRouteId());\n this.parameterSanitisers = sanitisers.filter(p => !p.isRouteId());\n }\n\n async sanitise(): Promise<boolean> {\n if (this.routeIdSanitiser) {\n await this.routeIdSanitiser.sanitize();\n if (this.routeIdSanitiser.valueChanged) {\n // if the route id isn't ok we redirect immediately as the query params may need to be sanitised in the\n // context of the route id.\n return false;\n }\n }\n for (const sanitiser of this.parameterSanitisers) {\n await sanitiser.sanitize();\n }\n return !this.parameterSanitisers.find(s => s.valueChanged);\n }\n\n redirect(router: Router) {\n assert.isTruthy(this.parameterSanitisers.length !== 0);\n if (this.routeIdSanitiser.valueChanged) {\n return router.navigate(['..', this.routeIdSanitiser.sanitisedValue]);\n } else {\n const routeParams = {};\n this.parameterSanitisers.forEach(s => s.injectRouteParam(routeParams));\n return router.navigate(['.', routeParams]);\n }\n }\n\n @Memoize()\n private getSanitiser<T, S>(def: ParameterDefinition<T, S>): ParameterSanitiser<S> {\n return def.sanitiser ? this.injector.get<ParameterSanitiser<S>>(def.sanitiser, new def.sanitiser()) : null;\n }\n}\n\nexport namespace Sanitiser {\n\n export class Value<T> extends Sanitiser<T, T> {\n\n readFrom(snapshot: ActivatedRouteSnapshot): T {\n const rawValue = this.parameterDef.isRouteId ?\n snapshot.paramMap.get(this.parameterDef.name) :\n snapshot.queryParamMap.get(this.parameterDef.name);\n\n return this.parameterDef.type.parse(rawValue);\n }\n\n protected hasChanged(initialValue: T, sanitisedValue: T): boolean {\n return initialValue !== sanitisedValue;\n }\n\n injectRouteParam(dest: {}) {\n dest[this.parameterDef.name] = this.parameterDef.type.format(this.sanitisedValue);\n }\n\n }\n\n export class Array<T> extends Sanitiser<T, T[]> {\n\n readFrom(snapshot: ActivatedRouteSnapshot): T[] {\n const rawValues = snapshot.queryParamMap.getAll(this.parameterDef.name);\n return rawValues.map(value => this.parameterDef.type.parse(value));\n }\n\n protected hasChanged(initialValue: T[], sanitisedValue: T[]): boolean {\n return initialValue !== sanitisedValue;\n }\n\n\n injectRouteParam(dest: {}) {\n dest[this.parameterDef.name] = this.sanitisedValue.map(v => this.parameterDef.type.format(v));\n }\n\n\n }\n\n}\n","import { Injectable, Injector } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivate,\n CanDeactivate,\n Router,\n RouterStateSnapshot,\n UrlTree\n} from '@angular/router';\nimport { Trace } from '@coolon/pectin';\nimport { Klass } from '@coolon/typescript-utilities';\nimport { Observable } from 'rxjs';\nimport { PlaceComponent } from '../place-component';\nimport { RouteParameterBindings } from '../route/route-parameter-bindings';\nimport { RouteParameterSanitiser } from '../route/route-parameter-sanitiser';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PlaceRouteGuard implements CanActivate {\n\n constructor(private router: Router, private injector: Injector) {\n }\n\n @Trace()\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n const routeParameters = Klass.get(route.component).getMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY);\n const sanitiser = new RouteParameterSanitiser(routeParameters, route, this.injector);\n return sanitiser.sanitise().then(proceed => {\n if (!proceed) {\n sanitiser.redirect(this.router);\n }\n return proceed;\n });\n }\n\n}\n","export type JsonPrimitive = boolean | number | string;\nexport type AnyJson = JsonPrimitive | null | JsonArray | JsonMap;\nexport interface JsonArray extends Array<AnyJson> {}\nexport interface JsonMap { [key: string]: AnyJson; }\n\n","import { assert, Constructable, UseDelegate } from '@coolon/pectin';\nimport { Klass, Opts } from '@coolon/typescript-utilities';\nimport { ParameterDefinition } from './parameter-definition.class';\nimport { ParameterSanitiser } from './parameter-sanitiser';\nimport { ParameterType } from './parameter-type';\nimport { RouteParameterBindings } from './route-parameter-bindings';\n\nexport interface ParameterOptions<T> {\n as?: string;\n sanitiser?: Constructable<ParameterSanitiser<T>>;\n}\n\nexport interface ListParameterOptions<T> {\n as?: string;\n listSanitiser?: Constructable<ParameterSanitiser<T[]>>;\n}\n\nexport function RouteId<T extends string | number>(type: ParameterType<T>, options?: ParameterOptions<T>): PropertyDecorator {\n // assert.isTruthy(type.isValid());\n return (prototype: Object, propertyKey: string | symbol) => {\n const param = createDefinition(propertyKey, type, options, true);\n Klass.get(prototype).addToOwnMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY, param);\n UseDelegate()(prototype, propertyKey);\n };\n}\n\n/**\n * @deprecated use RouteParameter instead.\n * @param type\n * @param options\n */\nexport function QueryParameter<T>(type: ParameterType<T>, options?: ParameterOptions<T>): PropertyDecorator {\n return (prototype: Object, propertyKey: string | symbol) => {\n const param = createDefinition(propertyKey, type, options, false);\n Klass.get(prototype).addToOwnMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY, param);\n UseDelegate()(prototype, propertyKey);\n };\n}\n\nexport function RouteParameter<T>(type: ParameterType<T>, options?: ParameterOptions<T>): PropertyDecorator {\n // assert.isTruthy(type.isValid());\n return (prototype: Object, propertyKey: string | symbol) => {\n const param = createDefinition(propertyKey, type, options, false);\n Klass.get(prototype).addToOwnMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY, param);\n UseDelegate()(prototype, propertyKey);\n };\n}\n\n/**\n * @deprecated use RouteParameterList instead\n * @param elementType\n * @param options\n */\nexport function QueryParameterList<E>(elementType: ParameterType<E>, options?: ListParameterOptions<E>): PropertyDecorator {\n // assert.isTruthy(type.isValid());\n return (prototype: Object, propertyKey: string | symbol) => {\n const param = createArrayDefinition(propertyKey, elementType, options);\n Klass.get(prototype).addToOwnMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY, param);\n UseDelegate()(prototype, propertyKey);\n };\n}\n\nexport function RouteParameterList<E>(elementType: ParameterType<E>, options?: ListParameterOptions<E>): PropertyDecorator {\n // assert.isTruthy(type.isValid());\n return (prototype: Object, propertyKey: string | symbol) => {\n const param = createArrayDefinition(propertyKey, elementType, options);\n Klass.get(prototype).addToOwnMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY, param);\n UseDelegate()(prototype, propertyKey);\n };\n}\n\nfunction createDefinition<T>(propertyName: symbol | string, type: ParameterType<T>, options: ParameterOptions<T>, routeId: boolean) {\n const opts = Opts.get(options);\n const propertyNameAsString = assert.notNil(propertyName).toString();\n const def: ParameterDefinition<T> = {\n name: opts.getOptional('as', propertyNameAsString),\n propertyName: propertyNameAsString,\n type: assert.notNil(type),\n sanitiser: opts.getOptional('sanitiser', null),\n isRouteId: routeId,\n isArray: false\n };\n return def;\n}\n\nfunction createArrayDefinition<T>(propertyName: symbol | string, type: ParameterType<T>, options: ListParameterOptions<T>) {\n const opts = Opts.get(options);\n const propertyNameAsString = assert.notNil(propertyName).toString();\n\n const def: ParameterDefinition<T, T[]> = {\n name: opts.getOptional('as', propertyNameAsString),\n propertyName: propertyNameAsString,\n type: assert.notNil(type),\n sanitiser: opts.getOptional('listSanitiser', null),\n isRouteId: false,\n isArray: true\n };\n return def;\n}\n","import { Constructable } from '@coolon/pectin';\nimport { ParameterSanitiser } from './parameter-sanitiser';\nimport { ParameterType } from './parameter-type';\n\nexport interface ParameterDefinition<E,S=E> {\n readonly name: string;\n readonly propertyName: string;\n readonly type: ParameterType<E>;\n readonly sanitiser: Constructable<ParameterSanitiser<S>>;\n readonly isRouteId: boolean;\n readonly isArray: boolean;\n}\n","export interface ParameterSanitiser<T> {\n sanitise(value: T): T | Promise<T>;\n}\n","export interface ParameterType<T> {\n format(value: T): string;\n\n parse(value: string): T;\n}\n\nexport namespace ParameterType {\n\n class StringType implements ParameterType<string> {\n format(value: string): string {\n return value;\n }\n\n parse(value: string): string {\n return value;\n }\n }\n\n class NumberType implements ParameterType<number> {\n format(value: number): string {\n return `${value}`;\n }\n\n parse(value: string): number {\n return +value;\n }\n }\n\n export const STRING = new StringType();\n export const NUMBER = new NumberType();\n}\n"],"names":["tslib_1.__extends","GarbageCollector","DelegatingFormValueModel","EventEmitter","Input","Output","HostListener","tslib_1.__decorate","UseDelegate","ValueModel","Component","assert","UnaryCommand","lang","Directive","ElementRef","Inject","Logger","NgZone","DOCUMENT","ListModel","StoreInListModel","InjectionToken","EventListenerList","DelegatingValueModel","MutableListModel","Deferred","ViewChild","ActivityContainerComponent","Injector","ComponentFactoryResolver","ViewContainerRef","ActivityOutletComponent","Injectable","MatDialog","NgModule","CommonModule","MatButtonModule","MatDialogModule","MatTabsModule","PortalModule","StoreInValueModel","Trace","BrowserAnimationsModule","MatProgressSpinnerModule","RouterModule","MatListModule","MatTooltipModule","BrowserModule","FormsModule","MatInputModule","MatFormFieldModule","MatSelectModule","style","OptionsHelper","trigger","transition","animate","Bounds","ValueHolder","_.isNil","Router","ActivatedRoute","MutableValueModel","TransactionObserver","Klass","Binding","RouteParameterBindings","Memoize","Sanitiser","tslib_1.__values","ActivatedRouteSnapshot","RouterStateSnapshot","Opts","ParameterType"],"mappings":"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"}
|