From 3fd6ce7de117598c6f030d131fcae0856c31a3d2 Mon Sep 17 00:00:00 2001 From: Vlad Date: Sun, 26 Jul 2020 16:52:22 +0300 Subject: [PATCH] added demo --- .github/workflows/demo.yml | 28 ++ README.md | 3 + angular.json | 128 ++++++- dist/demo/3rdpartylicenses.txt | 323 ++++++++++++++++ dist/demo/favicon.ico | Bin 0 -> 948 bytes dist/demo/index.html | 15 + dist/demo/main.4dca70cad6e1334c1100.js | 1 + dist/demo/polyfills.9e86b32c42185429d576.js | 1 + dist/demo/runtime.e227d1a0e31cbccbf8ec.js | 1 + dist/demo/styles.b69a7e9be38876f70e79.css | 1 + .../fesm2015/material-dual-listbox.js | 346 ++++++++++++++++++ .../fesm2015/material-dual-listbox.js.map | 1 + .../bundles/material-dual-listbox.umd.js | 8 +- .../bundles/material-dual-listbox.umd.js.map | 2 +- .../bundles/material-dual-listbox.umd.min.js | 4 +- .../material-dual-listbox.umd.min.js.map | 2 +- .../lib/material-dual-listbox.module.js | 4 +- .../fesm2015/material-dual-listbox.js | 2 +- .../fesm2015/material-dual-listbox.js.map | 2 +- .../lib/material-dual-listbox.component.d.ts | 5 + ...dual-listbox.component.d.ts.__ivy_ngcc_bak | 31 ++ .../material-dual-listbox.component.d.ts.map | 1 + .../lib/material-dual-listbox.module.d.ts | 13 + ...al-dual-listbox.module.d.ts.__ivy_ngcc_bak | 2 + .../lib/material-dual-listbox.module.d.ts.map | 1 + .../material-dual-listbox.d.ts | 2 + .../material-dual-listbox.d.ts.__ivy_ngcc_bak | 4 + .../material-dual-listbox.d.ts.map | 1 + dist/material-dual-listbox/package.json | 24 +- package-lock.json | 8 + package.json | 7 +- projects/demo/.browserslistrc | 18 + projects/demo/e2e/protractor.conf.js | 36 ++ projects/demo/e2e/src/app.e2e-spec.ts | 23 ++ projects/demo/e2e/src/app.po.ts | 11 + projects/demo/e2e/tsconfig.json | 14 + projects/demo/karma.conf.js | 32 ++ projects/demo/src/app/app.component.html | 1 + projects/demo/src/app/app.component.scss | 0 projects/demo/src/app/app.component.spec.ts | 31 ++ projects/demo/src/app/app.component.ts | 17 + projects/demo/src/app/app.module.ts | 20 + projects/demo/src/assets/.gitkeep | 0 .../demo/src/environments/environment.prod.ts | 3 + projects/demo/src/environments/environment.ts | 16 + projects/demo/src/favicon.ico | Bin 0 -> 948 bytes projects/demo/src/index.html | 15 + projects/demo/src/main.ts | 12 + projects/demo/src/polyfills.ts | 63 ++++ projects/demo/src/styles.scss | 4 + projects/demo/src/test.ts | 25 ++ projects/demo/tsconfig.app.json | 15 + projects/demo/tsconfig.spec.json | 18 + projects/demo/tslint.json | 17 + .../material-dual-listbox/package-lock.json | 2 +- projects/material-dual-listbox/package.json | 12 +- .../src/lib/material-dual-listbox.module.ts | 2 +- tsconfig.json | 6 + 58 files changed, 1354 insertions(+), 30 deletions(-) create mode 100644 .github/workflows/demo.yml create mode 100644 dist/demo/3rdpartylicenses.txt create mode 100644 dist/demo/favicon.ico create mode 100644 dist/demo/index.html create mode 100644 dist/demo/main.4dca70cad6e1334c1100.js create mode 100644 dist/demo/polyfills.9e86b32c42185429d576.js create mode 100644 dist/demo/runtime.e227d1a0e31cbccbf8ec.js create mode 100644 dist/demo/styles.b69a7e9be38876f70e79.css create mode 100644 dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js create mode 100644 dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js.map create mode 100644 dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.__ivy_ngcc_bak create mode 100644 dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.map create mode 100644 dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.__ivy_ngcc_bak create mode 100644 dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.map create mode 100644 dist/material-dual-listbox/material-dual-listbox.d.ts.__ivy_ngcc_bak create mode 100644 dist/material-dual-listbox/material-dual-listbox.d.ts.map create mode 100644 projects/demo/.browserslistrc create mode 100644 projects/demo/e2e/protractor.conf.js create mode 100644 projects/demo/e2e/src/app.e2e-spec.ts create mode 100644 projects/demo/e2e/src/app.po.ts create mode 100644 projects/demo/e2e/tsconfig.json create mode 100644 projects/demo/karma.conf.js create mode 100644 projects/demo/src/app/app.component.html create mode 100644 projects/demo/src/app/app.component.scss create mode 100644 projects/demo/src/app/app.component.spec.ts create mode 100644 projects/demo/src/app/app.component.ts create mode 100644 projects/demo/src/app/app.module.ts create mode 100644 projects/demo/src/assets/.gitkeep create mode 100644 projects/demo/src/environments/environment.prod.ts create mode 100644 projects/demo/src/environments/environment.ts create mode 100644 projects/demo/src/favicon.ico create mode 100644 projects/demo/src/index.html create mode 100644 projects/demo/src/main.ts create mode 100644 projects/demo/src/polyfills.ts create mode 100644 projects/demo/src/styles.scss create mode 100644 projects/demo/src/test.ts create mode 100644 projects/demo/tsconfig.app.json create mode 100644 projects/demo/tsconfig.spec.json create mode 100644 projects/demo/tslint.json diff --git a/.github/workflows/demo.yml b/.github/workflows/demo.yml new file mode 100644 index 0000000..f59d130 --- /dev/null +++ b/.github/workflows/demo.yml @@ -0,0 +1,28 @@ + +on: push +name: Demo +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + node-version: [12.x] + + steps: + - uses: actions/checkout@v2 + + - name: Cache node modules + uses: actions/cache@v1 + with: + path: ~/.npm + key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.os }}-node- + - name: Node ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - name: npm install and npm run demo + run: | + npm i + npm run demo \ No newline at end of file diff --git a/README.md b/README.md index 9656037..9d54fc3 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,12 @@ ![Build](https://github.com/rockaru/material-dual-listbox/workflows/Build/badge.svg) +![Demo](https://github.com/rockaru/material-dual-listbox/workflows/Demo/badge.svg) # MeaMaterialDualListbox Simple dual list box component to use with your Angular app, along with Angular Material. +![Demo](https://github.com/rockaru/material-dual-listbox/dist/demo) + ## Dependencies You will need: diff --git a/angular.json b/angular.json index 3ccf30e..5305e0d 100644 --- a/angular.json +++ b/angular.json @@ -42,6 +42,130 @@ } } } - }}, + }, + "demo": { + "projectType": "application", + "schematics": { + "@schematics/angular:component": { + "style": "scss" + } + }, + "root": "projects/demo", + "sourceRoot": "projects/demo/src", + "prefix": "app", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist/demo", + "index": "projects/demo/src/index.html", + "main": "projects/demo/src/main.ts", + "polyfills": "projects/demo/src/polyfills.ts", + "tsConfig": "projects/demo/tsconfig.app.json", + "aot": true, + "assets": [ + "projects/demo/src/favicon.ico", + "projects/demo/src/assets" + ], + "styles": [ + "./node_modules/@angular/material/prebuilt-themes/deeppurple-amber.css", + "projects/demo/src/styles.scss" + ], + "scripts": [] + }, + "configurations": { + "production": { + "fileReplacements": [ + { + "replace": "projects/demo/src/environments/environment.ts", + "with": "projects/demo/src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "budgets": [ + { + "type": "initial", + "maximumWarning": "2mb", + "maximumError": "5mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "6kb", + "maximumError": "10kb" + } + ] + } + } + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "demo:build" + }, + "configurations": { + "production": { + "browserTarget": "demo:build:production" + } + } + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "demo:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "projects/demo/src/test.ts", + "polyfills": "projects/demo/src/polyfills.ts", + "tsConfig": "projects/demo/tsconfig.spec.json", + "karmaConfig": "projects/demo/karma.conf.js", + "assets": [ + "projects/demo/src/favicon.ico", + "projects/demo/src/assets" + ], + "styles": [ + "./node_modules/@angular/material/prebuilt-themes/deeppurple-amber.css", + "projects/demo/src/styles.scss" + ], + "scripts": [] + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "projects/demo/tsconfig.app.json", + "projects/demo/tsconfig.spec.json", + "projects/demo/e2e/tsconfig.json" + ], + "exclude": [ + "**/node_modules/**" + ] + } + }, + "e2e": { + "builder": "@angular-devkit/build-angular:protractor", + "options": { + "protractorConfig": "projects/demo/e2e/protractor.conf.js", + "devServerTarget": "demo:serve" + }, + "configurations": { + "production": { + "devServerTarget": "demo:serve:production" + } + } + } + } + } + }, "defaultProject": "material-dual-listbox" -} +} \ No newline at end of file diff --git a/dist/demo/3rdpartylicenses.txt b/dist/demo/3rdpartylicenses.txt new file mode 100644 index 0000000..cce0f72 --- /dev/null +++ b/dist/demo/3rdpartylicenses.txt @@ -0,0 +1,323 @@ +@angular/animations +MIT + +@angular/cdk +MIT +The MIT License + +Copyright (c) 2020 Google LLC. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +@angular/common +MIT + +@angular/core +MIT + +@angular/forms +MIT + +@angular/material +MIT +The MIT License + +Copyright (c) 2020 Google LLC. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +@angular/platform-browser +MIT + +css-loader +MIT +Copyright JS Foundation and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +material-dual-listbox +MIT + +rxjs +Apache-2.0 + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +workspace + +zone.js +MIT +The MIT License + +Copyright (c) 2010-2020 Google LLC. http://angular.io/license + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/dist/demo/favicon.ico b/dist/demo/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..997406ad22c29aae95893fb3d666c30258a09537 GIT binary patch literal 948 zcmV;l155mgP)CBYU7IjCFmI-B}4sMJt3^s9NVg!P0 z6hDQy(L`XWMkB@zOLgN$4KYz;j0zZxq9KKdpZE#5@k0crP^5f9KO};h)ZDQ%ybhht z%t9#h|nu0K(bJ ztIkhEr!*UyrZWQ1k2+YkGqDi8Z<|mIN&$kzpKl{cNP=OQzXHz>vn+c)F)zO|Bou>E z2|-d_=qY#Y+yOu1a}XI?cU}%04)zz%anD(XZC{#~WreV!a$7k2Ug`?&CUEc0EtrkZ zL49MB)h!_K{H(*l_93D5tO0;BUnvYlo+;yss%n^&qjt6fZOa+}+FDO(~2>G z2dx@=JZ?DHP^;b7*Y1as5^uphBsh*s*z&MBd?e@I>-9kU>63PjP&^#5YTOb&x^6Cf z?674rmSHB5Fk!{Gv7rv!?qX#ei_L(XtwVqLX3L}$MI|kJ*w(rhx~tc&L&xP#?cQow zX_|gx$wMr3pRZIIr_;;O|8fAjd;1`nOeu5K(pCu7>^3E&D2OBBq?sYa(%S?GwG&_0-s%_v$L@R!5H_fc)lOb9ZoOO#p`Nn`KU z3LTTBtjwo`7(HA6 z7gmO$yTR!5L>Bsg!X8616{JUngg_@&85%>W=mChTR;x4`P=?PJ~oPuy5 zU-L`C@_!34D21{fD~Y8NVnR3t;aqZI3fIhmgmx}$oc-dKDC6Ap$Gy>a!`A*x2L1v0 WcZ@i?LyX}70000 + + + + Demo + + + + + + + + + + diff --git a/dist/demo/main.4dca70cad6e1334c1100.js b/dist/demo/main.4dca70cad6e1334c1100.js new file mode 100644 index 0000000..4574b68 --- /dev/null +++ b/dist/demo/main.4dca70cad6e1334c1100.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function i(t){return"function"==typeof t}n.r(e);let s=!1;const r={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function o(t){setTimeout(()=>{throw t},0)}const a={closed:!0,next(t){},error(t){if(r.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},l=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const h=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let u=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:s,_subscriptions:r}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof h?e.errors:e),[])}const p=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class f extends u{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=a;break;case 1:if(!t){this.destination=a;break}if("object"==typeof t){t instanceof f?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[p](){return this}static create(t,e,n){const i=new f(t,e,n);return i.syncErrorThrowable=!1,i}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class m extends f{constructor(t,e,n,s){let r;super(),this._parentSubscriber=t;let o=this;i(e)?r=e:e&&(r=e.next,n=e.error,s=e.complete,e!==a&&(o=Object.create(e),i(o.unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=r,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;r.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=r;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);r.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),r.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!r.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(i){return r.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=i,t.syncErrorThrown=!0,!0):(o(i),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const g=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function _(t){return t}let y=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:i}=this,s=function(t,e,n){if(t){if(t instanceof f)return t;if(t[p])return t[p]()}return t||e||n?new f(t,e,n):new f(a)}(t,e,n);if(s.add(i?i.call(s,this.source):this.source||r.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),r.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){r.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:i}=t;if(e||i)return!1;t=n&&n instanceof f?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=b(e))((e,n)=>{let i;i=this.subscribe(e=>{try{t(e)}catch(s){n(s),i&&i.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[g](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?_:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=b(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function b(t){if(t||(t=r.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const v=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends u{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends f{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends y{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[p](){return new C(this)}lift(t){const e=new S(this,this);return e.operator=t,e}next(t){if(this.closed)throw new v;if(!this.isStopped){const{observers:e}=this,n=e.length,i=e.slice();for(let s=0;snew S(t,e),t})();class S extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):u.EMPTY}}function x(t){return t&&"function"==typeof t.schedule}class k extends f{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=t=>e=>{for(let n=0,i=t.length;nt&&"number"==typeof t.length&&"function"!=typeof t;function P(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const O=t=>{if(t&&"function"==typeof t[g])return i=t,t=>{const e=i[g]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(A(t))return T(t);if(P(t))return n=t,t=>(n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,o),t);if(t&&"function"==typeof t[D])return e=t,t=>{const n=e[D]();for(;;){const e=n.next();if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}var e,n,i};function R(t,e,n,i,s=new k(t,n,i)){if(!s.closed)return e instanceof y?e.subscribe(s):O(e)(s)}class N extends f{notifyNext(t,e,n,i,s){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new V(t,e))}}class V{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new M(t,this.project,this.thisArg))}}class M extends f{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function L(t,e){return new y(n=>{const i=new u;let s=0;return i.add(e.schedule((function(){s!==t.length?(n.next(t[s++]),n.closed||i.add(this.schedule())):n.complete()}))),i})}function j(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[g]}(t))return function(t,e){return new y(n=>{const i=new u;return i.add(e.schedule(()=>{const s=t[g]();i.add(s.subscribe({next(t){i.add(e.schedule(()=>n.next(t)))},error(t){i.add(e.schedule(()=>n.error(t)))},complete(){i.add(e.schedule(()=>n.complete()))}}))})),i})}(t,e);if(P(t))return function(t,e){return new y(n=>{const i=new u;return i.add(e.schedule(()=>t.then(t=>{i.add(e.schedule(()=>{n.next(t),i.add(e.schedule(()=>n.complete()))}))},t=>{i.add(e.schedule(()=>n.error(t)))}))),i})}(t,e);if(A(t))return L(t,e);if(function(t){return t&&"function"==typeof t[D]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new y(n=>{const i=new u;let s;return i.add(()=>{s&&"function"==typeof s.return&&s.return()}),i.add(e.schedule(()=>{s=t[D](),i.add(e.schedule((function(){if(n.closed)return;let t,e;try{const n=s.next();t=n.value,e=n.done}catch(i){return void n.error(i)}e?n.complete():(n.next(t),this.schedule())})))})),i})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}(t,e):t instanceof y?t:new y(O(t))}function B(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(B((n,i)=>j(t(n,i)).pipe(F((t,s)=>e(n,t,i,s))),n)):("number"==typeof e&&(n=e),e=>e.lift(new H(t,n)))}class H{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new z(t,this.project,this.concurrent))}}class z extends N{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function q(t=Number.POSITIVE_INFINITY){return B(_,t)}function $(t,e){return e?L(t,e):new y(T(t))}function U(...t){let e=Number.POSITIVE_INFINITY,n=null,i=t[t.length-1];return x(i)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof i&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof y?t[0]:q(e)($(t,n))}function G(){return function(t){return t.lift(new W(t))}}class W{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const i=new Z(t,n),s=e.subscribe(i);return i.closed||(i.connection=n.connect()),s}}class Z extends f{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,i=t._connection;this.connection=null,!i||n&&i!==n||i.unsubscribe()}}class Q extends y{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new u,t.add(this.source.subscribe(new Y(this.getSubject(),this))),t.closed&&(this._connection=null,t=u.EMPTY)),t}refCount(){return G()(this)}}const K=(()=>{const t=Q.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class Y extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function J(){return new E}function X(){return t=>{return G()((e=J,function(t){let n;n="function"==typeof e?e:function(){return e};const i=Object.create(t,K);return i.source=t,i.subjectFactory=n,i})(t));var e}}function tt(t){return{toString:t}.toString()}function et(t,e,n){return tt(()=>{const i=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return i.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,i){const s=t.hasOwnProperty("__parameters__")?t.__parameters__:Object.defineProperty(t,"__parameters__",{value:[]}).__parameters__;for(;s.length<=i;)s.push(null);return(s[i]=s[i]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const nt=et("Inject",t=>({token:t})),it=et("Optional"),st=et("Self"),rt=et("SkipSelf");var ot=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});function at(t){for(let e in t)if(t[e]===at)return e;throw Error("Could not find renamed property on target object.")}function lt(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function ct(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function ht(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function ut(t){return dt(t,t[ft])||dt(t,t[_t])}function dt(t,e){return e&&e.token===t?e:null}function pt(t){return t&&(t.hasOwnProperty(mt)||t.hasOwnProperty(yt))?t[mt]:null}const ft=at({"\u0275prov":at}),mt=at({"\u0275inj":at}),gt=at({"\u0275provFallback":at}),_t=at({ngInjectableDef:at}),yt=at({ngInjectorDef:at});function bt(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(bt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function vt(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const wt=at({__forward_ref__:at});function Ct(t){return t.__forward_ref__=Ct,t.toString=function(){return bt(this())},t}function Et(t){return St(t)?t():t}function St(t){return"function"==typeof t&&t.hasOwnProperty(wt)&&t.__forward_ref__===Ct}const xt="undefined"!=typeof globalThis&&globalThis,kt="undefined"!=typeof window&&window,Tt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,It="undefined"!=typeof global&&global,Dt=xt||It||kt||Tt,At=at({"\u0275cmp":at}),Pt=at({"\u0275dir":at}),Ot=at({"\u0275pipe":at}),Rt=at({"\u0275mod":at}),Nt=at({"\u0275loc":at}),Ft=at({"\u0275fac":at}),Vt=at({__NG_ELEMENT_ID__:at});class Mt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=ct({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}const Lt=new Mt("INJECTOR",-1),jt={},Bt=/\n/gm,Ht=at({provide:String,useValue:at});let zt,qt=void 0;function $t(t){const e=qt;return qt=t,e}function Ut(t){const e=zt;return zt=t,e}function Gt(t,e=ot.Default){if(void 0===qt)throw new Error("inject() must be called from an injection context");return null===qt?Qt(t,void 0,e):qt.get(t,e&ot.Optional?null:void 0,e)}function Wt(t,e=ot.Default){return(zt||Gt)(Et(t),e)}const Zt=Wt;function Qt(t,e,n){const i=ut(t);if(i&&"root"==i.providedIn)return void 0===i.value?i.value=i.factory():i.value;if(n&ot.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${bt(t)}]`)}function Kt(t){const e=[];for(let n=0;nArray.isArray(t)?Xt(t,e):e(t))}function te(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function ee(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function ne(t,e){const n=[];for(let i=0;i=0?t[1|i]=n:(i=~i,function(t,e,n,i){let s=t.length;if(s==e)t.push(n,i);else if(1===s)t.push(i,t[0]),t[0]=n;else{for(s--,t.push(t[s-1],t[s]);s>e;)t[s]=t[s-2],s--;t[e]=n,t[e+1]=i}}(t,i,e,n)),i}function se(t,e){const n=re(t,e);if(n>=0)return t[1|n]}function re(t,e){return function(t,e,n){let i=0,s=t.length>>1;for(;s!==i;){const n=i+(s-i>>1),r=t[n<<1];if(e===r)return n<<1;r>e?s=n:i=n+1}return~(s<<1)}(t,e)}var oe=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({}),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const le={},ce=[];let he=0;function ue(t){return tt(()=>{const e={},n={type:t.type,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:e,inputs:null,outputs:null,exportAs:t.exportAs||null,onPush:t.changeDetection===oe.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||ce,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||ae.Emulated,id:"c",styles:t.styles||ce,_:null,setInput:null,schemas:t.schemas||null,tView:null},i=t.directives,s=t.features,r=t.pipes;return n.id+=he++,n.inputs=ge(t.inputs,e),n.outputs=ge(t.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=i?()=>("function"==typeof i?i():i).map(de):null,n.pipeDefs=r?()=>("function"==typeof r?r():r).map(pe):null,n})}function de(t){return ye(t)||function(t){return t[Pt]||null}(t)}function pe(t){return function(t){return t[Ot]||null}(t)}const fe={};function me(t){const e={type:t.type,bootstrap:t.bootstrap||ce,declarations:t.declarations||ce,imports:t.imports||ce,exports:t.exports||ce,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&tt(()=>{fe[t.id]=t.type}),e}function ge(t,e){if(null==t)return le;const n={};for(const i in t)if(t.hasOwnProperty(i)){let s=t[i],r=s;Array.isArray(s)&&(r=s[1],s=s[0]),n[s]=i,e&&(e[s]=r)}return n}const _e=ue;function ye(t){return t[At]||null}function be(t,e){return t.hasOwnProperty(Ft)?t[Ft]:null}function ve(t,e){const n=t[Rt]||null;if(!n&&!0===e)throw new Error(`Type ${bt(t)} does not have '\u0275mod' property.`);return n}function we(t){return Array.isArray(t)&&"object"==typeof t[1]}function Ce(t){return Array.isArray(t)&&!0===t[1]}function Ee(t){return 0!=(8&t.flags)}function Se(t){return 2==(2&t.flags)}function xe(t){return 1==(1&t.flags)}function ke(t){return null!==t.template}function Te(t){return 0!=(512&t[2])}class Ie{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function De(){return Ae}function Ae(t){return t.type.prototype.ngOnChanges&&(t.setInput=Oe),Pe}function Pe(){const t=Re(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===le)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function Oe(t,e,n,i){const s=Re(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:le,current:null}),r=s.current||(s.current={}),o=s.previous,a=this.declaredInputs[n],l=o[a];r[a]=new Ie(l&&l.currentValue,e,o===le),t[i]=e}function Re(t){return t.__ngSimpleChanges__||null}De.ngInherit=!0;let Ne=void 0;function Fe(t){return!!t.listen}const Ve={createRenderer:(t,e)=>void 0!==Ne?Ne:"undefined"!=typeof document?document:void 0};function Me(t){for(;Array.isArray(t);)t=t[0];return t}function Le(t,e){return Me(e[t+20])}function je(t,e){return Me(e[t.index])}function Be(t,e){return t.data[e+20]}function He(t,e){const n=e[t];return we(n)?n:n[0]}function ze(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function qe(t){return 4==(4&t[2])}function $e(t){return 128==(128&t[2])}function Ue(t,e){return null===t||null==e?null:t[e]}function Ge(t){t[18]=0}function We(t,e){t[5]+=e;let n=t,i=t[3];for(;null!==i&&(1===e&&1===n[5]||-1===e&&0===n[5]);)i[5]+=e,n=i,i=i[3]}const Ze={lFrame:mn(null),bindingsEnabled:!0,checkNoChangesMode:!1};function Qe(){return Ze.bindingsEnabled}function Ke(){return Ze.lFrame.lView}function Ye(){return Ze.lFrame.tView}function Je(t){Ze.lFrame.contextLView=t}function Xe(){return Ze.lFrame.previousOrParentTNode}function tn(t,e){Ze.lFrame.previousOrParentTNode=t,Ze.lFrame.isParent=e}function en(){return Ze.lFrame.isParent}function nn(){Ze.lFrame.isParent=!1}function sn(){return Ze.checkNoChangesMode}function rn(t){Ze.checkNoChangesMode=t}function on(){return Ze.lFrame.bindingIndex++}function an(t){const e=Ze.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function ln(t,e){const n=Ze.lFrame;n.bindingIndex=n.bindingRootIndex=t,cn(e)}function cn(t){Ze.lFrame.currentDirectiveIndex=t}function hn(){return Ze.lFrame.currentQueryIndex}function un(t){Ze.lFrame.currentQueryIndex=t}function dn(t,e){const n=fn();Ze.lFrame=n,n.previousOrParentTNode=e,n.lView=t}function pn(t,e){const n=fn(),i=t[1];Ze.lFrame=n,n.previousOrParentTNode=e,n.lView=t,n.tView=i,n.contextLView=t,n.bindingIndex=i.bindingStartIndex}function fn(){const t=Ze.lFrame,e=null===t?null:t.child;return null===e?mn(t):e}function mn(t){const e={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null};return null!==t&&(t.child=e),e}function gn(){const t=Ze.lFrame;return Ze.lFrame=t.parent,t.previousOrParentTNode=null,t.lView=null,t}const _n=gn;function yn(){const t=gn();t.isParent=!0,t.tView=null,t.selectedIndex=0,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function bn(){return Ze.lFrame.selectedIndex}function vn(t){Ze.lFrame.selectedIndex=t}function wn(){const t=Ze.lFrame;return Be(t.tView,t.selectedIndex)}function Cn(t,e){for(let n=e.directiveStart,i=e.directiveEnd;n=i)break}else e[o]<0&&(t[18]+=65536),(r>11>16&&(3&t[2])===e&&(t[2]+=2048,r.call(o)):r.call(o)}class In{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Dn(t,e,n){const i=Fe(t);let s=0;for(;se){o=r-1;break}}}for(;r>16}function Mn(t,e){let n=Vn(t),i=e;for(;n>0;)i=i[15],n--;return i}function Ln(t){return"string"==typeof t?t:null==t?"":""+t}function jn(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():Ln(t)}const Bn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt))();function Hn(t){return t instanceof Function?t():t}let zn=!0;function qn(t){const e=zn;return zn=t,e}let $n=0;function Un(t,e){const n=Wn(t,e);if(-1!==n)return n;const i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,Gn(i.data,t),Gn(e,null),Gn(i.blueprint,null));const s=Zn(t,e),r=t.injectorIndex;if(Nn(s)){const t=Fn(s),n=Mn(s,e),i=n[1].data;for(let s=0;s<8;s++)e[r+s]=n[t+s]|i[t+s]}return e[r+8]=s,r}function Gn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Wn(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null==e[t.injectorIndex+8]?-1:t.injectorIndex}function Zn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=e[6],i=1;for(;n&&-1===n.injectorIndex;)n=(e=e[15])?e[6]:null,i++;return n?n.injectorIndex|i<<16:-1}function Qn(t,e,n){!function(t,e,n){let i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(Vt)&&(i=n[Vt]),null==i&&(i=n[Vt]=$n++);const s=255&i,r=1<0?255&e:e}(n);if("function"==typeof s){dn(e,t);try{const t=s();if(null!=t||i&ot.Optional)return t;throw new Error(`No provider for ${jn(n)}!`)}finally{_n()}}else if("number"==typeof s){if(-1===s)return new ii(t,e);let r=null,o=Wn(t,e),a=-1,l=i&ot.Host?e[16][6]:null;for((-1===o||i&ot.SkipSelf)&&(a=-1===o?Zn(t,e):e[o+8],ni(i,!1)?(r=e[1],o=Fn(a),e=Mn(a,e)):o=-1);-1!==o;){a=e[o+8];const t=e[1];if(ei(s,o,t.data)){const t=Jn(o,e,n,r,i,l);if(t!==Yn)return t}ni(i,e[1].data[o+8]===l)&&ei(s,o,e)?(r=t,o=Fn(a),e=Mn(a,e)):o=-1}}}if(i&ot.Optional&&void 0===s&&(s=null),0==(i&(ot.Self|ot.Host))){const t=e[9],r=Ut(void 0);try{return t?t.get(n,s,i&ot.Optional):Qt(n,s,i&ot.Optional)}finally{Ut(r)}}if(i&ot.Optional)return s;throw new Error(`NodeInjector: NOT_FOUND [${jn(n)}]`)}const Yn={};function Jn(t,e,n,i,s,r){const o=e[1],a=o.data[t+8],l=Xn(a,o,n,null==i?Se(a)&&zn:i!=o&&3===a.type,s&ot.Host&&r===a);return null!==l?ti(e,o,l,a):Yn}function Xn(t,e,n,i,s){const r=t.providerIndexes,o=e.data,a=1048575&r,l=t.directiveStart,c=r>>20,h=s?a+c:t.directiveEnd;for(let u=i?a:a+c;u=l&&t.type===n)return u}if(s){const t=o[l];if(t&&ke(t)&&t.type===n)return l}return null}function ti(t,e,n,i){let s=t[n];const r=e.data;if(s instanceof In){const o=s;if(o.resolving)throw new Error("Circular dep for "+jn(r[n]));const a=qn(o.canSeeViewProviders);let l;o.resolving=!0,o.injectImpl&&(l=Ut(o.injectImpl)),dn(t,i);try{s=t[n]=o.factory(void 0,r,t,i),e.firstCreatePass&&n>=i.directiveStart&&function(t,e,n){const{ngOnChanges:i,ngOnInit:s,ngDoCheck:r}=e.type.prototype;if(i){const i=Ae(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)}s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r))}(n,r[n],e)}finally{o.injectImpl&&Ut(l),qn(a),o.resolving=!1,_n()}}return s}function ei(t,e,n){const i=64&t,s=32&t;let r;return r=128&t?i?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:i?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(r&1<{const t=si(Et(e));return t?t():null};let n=be(e);if(null===n){const t=pt(e);n=t&&t.factory}return n||null}function ri(t){return tt(()=>{const e=t.prototype.constructor,n=e[Ft]||si(e),i=Object.prototype;let s=Object.getPrototypeOf(t.prototype).constructor;for(;s&&s!==i;){const t=s[Ft]||si(s);if(t&&t!==n)return t;s=Object.getPrototypeOf(s)}return t=>new t})}function oi(t){return t.ngDebugContext}function ai(t){return t.ngOriginalError}function li(t,...e){t.error(...e)}class ci{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t.ngErrorLogger||li}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?oi(t)?oi(t):this._findContext(ai(t)):null}_findOriginalError(t){let e=ai(t);for(;e&&ai(e);)e=ai(e);return e}}class hi{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"}}class ui extends hi{getTypeName(){return"HTML"}}class di extends hi{getTypeName(){return"Style"}}class pi extends hi{getTypeName(){return"Script"}}class fi extends hi{getTypeName(){return"URL"}}class mi extends hi{getTypeName(){return"ResourceURL"}}function gi(t){return t instanceof hi?t.changingThisBreaksApplicationSecurity:t}function _i(t,e){const n=yi(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see http://g.co/ng/security#xss)`)}return n===e}function yi(t){return t instanceof hi&&t.getTypeName()||null}let bi=!0,vi=!1;function wi(){return vi=!0,bi}class Ci{getInertBodyElement(t){t=""+t+"";try{const e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(e){return null}}}class Ei{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t);const e=this.inertDocument.createElement("body");t.appendChild(e)}}getInertBodyElement(t){const e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=t,e;const n=this.inertDocument.createElement("body");return n.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let i=e.length-1;0ki(t.trim())).join(", ")),this.buf.push(" ",e,'="',Hi(o),'"')}var i;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();Ri.hasOwnProperty(e)&&!Di.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(Hi(t))}checkClobberedElement(t,e){if(e&&(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+t.outerHTML);return e}}const ji=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Bi=/([^\#-~ |!])/g;function Hi(t){return t.replace(/&/g,"&").replace(ji,(function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"})).replace(Bi,(function(t){return"&#"+t.charCodeAt(0)+";"})).replace(//g,">")}let zi;function qi(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var $i=function(t){return t[t.NONE=0]="NONE",t[t.HTML=1]="HTML",t[t.STYLE=2]="STYLE",t[t.SCRIPT=3]="SCRIPT",t[t.URL=4]="URL",t[t.RESOURCE_URL=5]="RESOURCE_URL",t}({});function Ui(t,e){t.__ngContext__=e}function Gi(t){throw new Error("Multiple components match node with tagname "+t.tagName)}function Wi(){throw new Error("Cannot mix multi providers and regular providers")}function Zi(t,e,n){let i=t.length;for(;;){const s=t.indexOf(e,n);if(-1===s)return s;if(0===s||t.charCodeAt(s-1)<=32){const n=e.length;if(s+n===i||t.charCodeAt(s+n)<=32)return s}n=s+1}}function Qi(t,e,n){let i=0;for(;ir?"":s[h+1].toLowerCase();const e=8&i?t:null;if(e&&-1!==Zi(e,c,0)||2&i&&c!==t){if(Xi(i))return!1;o=!0}}}}else{if(!o&&!Xi(i)&&!Xi(l))return!1;if(o&&Xi(l))continue;o=!1,i=l|1&i}}return Xi(i)||o}function Xi(t){return 0==(1&t)}function ts(t,e,n,i){if(null===e)return-1;let s=0;if(i||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&i?s+="."+o:4&i&&(s+=" "+o);else""===s||Xi(o)||(e+=is(r,s),s=""),i=o,r=r||!Xi(i);n++}return""!==s&&(e+=is(r,s)),e}const rs={};function os(t){const e=t[3];return Ce(e)?e[3]:e}function as(t){return cs(t[13])}function ls(t){return cs(t[4])}function cs(t){for(;null!==t&&!Ce(t);)t=t[4];return t}function hs(t){us(Ye(),Ke(),bn()+t,sn())}function us(t,e,n,i){if(!i)if(3==(3&e[2])){const i=t.preOrderCheckHooks;null!==i&&En(e,i,n)}else{const i=t.preOrderHooks;null!==i&&Sn(e,i,0,n)}vn(n)}function ds(t,e){return t<<17|e<<2}function ps(t){return t>>17&32767}function fs(t){return 2|t}function ms(t){return(131068&t)>>2}function gs(t,e){return-131069&t|e<<2}function _s(t){return 1|t}function ys(t,e){const n=t.contentQueries;if(null!==n)for(let i=0;i20&&us(t,e,0,sn()),n(i,s)}finally{vn(r)}}function ks(t,e,n){if(Ee(e)){const i=e.directiveEnd;for(let s=e.directiveStart;s0&&function t(e){for(let i=as(e);null!==i;i=ls(i))for(let e=10;e0&&t(n)}const n=e[1].components;if(null!==n)for(let i=0;i0&&t(s)}}(n)}}function Qs(t,e){const n=He(e,t),i=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function nr(t){return t[7]||(t[7]=[])}function ir(t,e){const n=t[9],i=n?n.get(ci,null):null;i&&i.handleError(e)}function sr(t,e,n,i,s){for(let r=0;r0&&(t[n-1][4]=i[4]);const r=ee(t,10+e);cr(i[1],i,!1,null);const o=r[19];null!==o&&o.detachView(r[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function dr(t,e){if(!(256&e[2])){const n=e[11];Fe(n)&&n.destroyNode&&Sr(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return fr(t[1],t);for(;e;){let n=null;if(we(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)we(e)&&fr(e[1],e),e=pr(e,t);null===e&&(e=t),we(e)&&fr(e[1],e),n=e&&e[4]}e=n}}(e)}}function pr(t,e){let n;return we(t)&&(n=t[6])&&2===n.type?or(n,t):t[3]===e?null:t[3]}function fr(t,e){if(!(256&e[2])){e[2]&=-129,e[2]|=256,function(t,e){let n;if(null!=t&&null!=(n=t.destroyHooks))for(let i=0;i=0?t[a]():t[-a].unsubscribe(),i+=2}else n[i].call(t[n[i+1]]);e[7]=null}}(t,e);const n=e[6];n&&3===n.type&&Fe(e[11])&&e[11].destroy();const i=e[17];if(null!==i&&Ce(e[3])){i!==e[3]&&hr(i,e);const n=e[19];null!==n&&n.detachView(t)}}}function mr(t,e,n){let i=e.parent;for(;null!=i&&(4===i.type||5===i.type);)i=(e=i).parent;if(null==i){const t=n[6];return 2===t.type?ar(t,n):n[0]}if(e&&5===e.type&&4&e.flags)return je(e,n).parentNode;if(2&i.flags){const e=t.data,n=e[e[i.index].directiveStart].encapsulation;if(n!==ae.ShadowDom&&n!==ae.Native)return null}return je(i,n)}function gr(t,e,n,i){Fe(t)?t.insertBefore(e,n,i):e.insertBefore(n,i,!0)}function _r(t,e,n){Fe(t)?t.appendChild(e,n):e.appendChild(n)}function yr(t,e,n,i){null!==i?gr(t,e,n,i):_r(t,e,n)}function br(t,e){return Fe(t)?t.parentNode(e):e.parentNode}function vr(t,e){if(2===t.type){const n=or(t,e);return null===n?null:Cr(n.indexOf(e,10)-10,n)}return 4===t.type||5===t.type?je(t,e):null}function wr(t,e,n,i){const s=mr(t,i,e);if(null!=s){const t=e[11],r=vr(i.parent||e[6],e);if(Array.isArray(n))for(let e=0;e-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}dr(this._lView[1],this._lView)}onDestroy(t){Ps(this._lView[1],this._lView,null,t)}markForCheck(){Ys(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Js(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){rn(!0);try{Js(t,e,n)}finally{rn(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,Sr(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class Dr extends Ir{constructor(t){super(t),this._view=t}detectChanges(){Xs(this._view)}checkNoChanges(){!function(t){rn(!0);try{Xs(t)}finally{rn(!1)}}(this._view)}get context(){return null}}let Ar,Pr,Or;function Rr(t,e,n){return Ar||(Ar=class extends t{}),new Ar(je(e,n))}function Nr(t,e,n,i){return Pr||(Pr=class extends t{constructor(t,e,n){super(),this._declarationView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=vs(this._declarationView,e,t,16,null,e.node);n[17]=this._declarationView[this._declarationTContainer.index];const i=this._declarationView[19];return null!==i&&(n[19]=i.createEmbeddedView(e)),Cs(e,n,t),new Ir(n)}}),0===n.type?new Pr(i,n,Rr(e,n,i)):null}function Fr(t,e,n,i){let s;Or||(Or=class extends t{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostView=n}get element(){return Rr(e,this._hostTNode,this._hostView)}get injector(){return new ii(this._hostTNode,this._hostView)}get parentInjector(){const t=Zn(this._hostTNode,this._hostView),e=Mn(t,this._hostView),n=function(t,e,n){if(n.parent&&-1!==n.parent.injectorIndex){const t=n.parent.injectorIndex;let e=n.parent;for(;null!=e.parent&&t==e.parent.injectorIndex;)e=e.parent;return e}let i=Vn(t),s=e,r=e[6];for(;i>1;)s=s[15],r=s[6],i--;return r}(t,this._hostView,this._hostTNode);return Nn(t)&&null!=n?new ii(n,e):new ii(null,this._hostView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){return null!==this._lContainer[8]&&this._lContainer[8][t]||null}get length(){return this._lContainer.length-10}createEmbeddedView(t,e,n){const i=t.createEmbeddedView(e||{});return this.insert(i,n),i}createComponent(t,e,n,i,s){const r=n||this.parentInjector;if(!s&&null==t.ngModule&&r){const t=r.get(Jt,null);t&&(s=t)}const o=t.create(r,i,void 0,s);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,i=n[1];if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");if(this.allocateContainerIfNeeded(),Ce(n[3])){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],i=new Or(e,e[6],e[3]);i.detach(i.indexOf(t))}}const s=this._adjustIndex(e);return function(t,e,n,i){const s=10+i,r=n.length;i>0&&(n[s-1][4]=e),i{class t{}return t.__NG_ELEMENT_ID__=()=>Mr(),t})();const Mr=function(t=!1){return function(t,e,n){if(!n&&Se(t)){const n=He(t.index,e);return new Ir(n,n)}return 3===t.type||0===t.type||4===t.type||5===t.type?new Ir(e[16],e):null}(Xe(),Ke(),t)},Lr=new Mt("Set Injector scope."),jr={},Br={},Hr=[];let zr=void 0;function qr(){return void 0===zr&&(zr=new Yt),zr}function $r(t,e=null,n=null,i){return new Ur(t,n,e||qr(),i)}class Ur{constructor(t,e,n,i=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const s=[];e&&Xt(e,n=>this.processProvider(n,t,e)),Xt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Lt,Zr(void 0,this));const r=this.records.get(Lr);this.scope=null!=r?r.value:null,this.source=i||("object"==typeof t?null:bt(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=jt,n=ot.Default){this.assertNotDestroyed();const i=$t(this);try{if(!(n&ot.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof Mt)&&ut(t);e=n&&this.injectableDefInScope(n)?Zr(Gr(t),jr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&ot.Self?qr():this.parent).get(t,e=n&ot.Optional&&e===jt?null:e)}catch(r){if("NullInjectorError"===r.name){if((r.ngTempTokenPath=r.ngTempTokenPath||[]).unshift(bt(t)),i)throw r;return function(t,e,n,i){const s=t.ngTempTokenPath;throw e.__source&&s.unshift(e.__source),t.message=function(t,e,n,i=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=bt(e);if(Array.isArray(e))s=e.map(bt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let i=e[n];t.push(n+":"+("string"==typeof i?JSON.stringify(i):bt(i)))}s=`{${t.join(", ")}}`}return`${n}${i?"("+i+")":""}[${s}]: ${t.replace(Bt,"\n ")}`}("\n"+t.message,s,n,i),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(r,t,"R3InjectorError",this.source)}throw r}finally{$t(i)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(bt(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=Et(t)))return!1;let i=pt(t);const s=null==i&&t.ngModule||void 0,r=void 0===s?t:s,o=-1!==n.indexOf(r);if(void 0!==s&&(i=pt(s)),null==i)return!1;if(null!=i.imports&&!o){let t;n.push(r);try{Xt(i.imports,i=>{this.processInjectorType(i,e,n)&&(void 0===t&&(t=[]),t.push(i))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,i||Hr))}}this.injectorDefTypes.add(r),this.records.set(r,Zr(i.factory,jr));const a=i.providers;if(null!=a&&!o){const e=t;Xt(a,t=>this.processProvider(t,e,a))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let i=Kr(t=Et(t))?t:Et(t&&t.provide);const s=function(t,e,n){return Qr(t)?Zr(void 0,t.useValue):Zr(Wr(t,e,n),jr)}(t,e,n);if(Kr(t)||!0!==t.multi){const t=this.records.get(i);t&&void 0!==t.multi&&Wi()}else{let e=this.records.get(i);e?void 0===e.multi&&Wi():(e=Zr(void 0,jr,!0),e.factory=()=>Kt(e.multi),this.records.set(i,e)),i=t,e.multi.push(t)}this.records.set(i,s)}hydrate(t,e){var n;return e.value===Br?function(t){throw new Error("Cannot instantiate cyclic dependency! "+t)}(bt(t)):e.value===jr&&(e.value=Br,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function Gr(t){const e=ut(t),n=null!==e?e.factory:be(t);if(null!==n)return n;const i=pt(t);if(null!==i)return i.factory;if(t instanceof Mt)throw new Error(`Token ${bt(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=ne(e,"?");throw new Error(`Can't resolve all parameters for ${bt(t)}: (${n.join(", ")}).`)}const n=function(t){const e=t&&(t[ft]||t[_t]||t[gt]&&t[gt]());if(e){const n=function(t){if(t.hasOwnProperty("name"))return t.name;const e=(""+t).match(/^function\s*([^\s(]+)/);return null===e?"":e[1]}(t);return console.warn(`DEPRECATED: DI is instantiating a token "${n}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in a future version of Angular. Please add @Injectable() to the "${n}" class.`),e}return null}(t);return null!==n?()=>n.factory(t):()=>new t}(t);throw new Error("unreachable")}function Wr(t,e,n){let i=void 0;if(Kr(t)){const e=Et(t);return be(e)||Gr(e)}if(Qr(t))i=()=>Et(t.useValue);else if((s=t)&&s.useFactory)i=()=>t.useFactory(...Kt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))i=()=>Wt(Et(t.useExisting));else{const s=Et(t&&(t.useClass||t.provide));if(s||function(t,e,n){let i="";throw t&&e&&(i=` - only instances of Provider and Type are allowed, got: [${e.map(t=>t==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${bt(t)}'`+i)}(e,n,t),!function(t){return!!t.deps}(t))return be(s)||Gr(s);i=()=>new s(...Kt(t.deps))}var s;return i}function Zr(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Qr(t){return null!==t&&"object"==typeof t&&Ht in t}function Kr(t){return"function"==typeof t}const Yr=function(t,e,n){return function(t,e=null,n=null,i){const s=$r(t,e,n,i);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Jr=(()=>{class t{static create(t,e){return Array.isArray(t)?Yr(t,e,""):Yr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=jt,t.NULL=new Yt,t.\u0275prov=ct({token:t,providedIn:"any",factory:()=>Wt(Lt)}),t.__NG_ELEMENT_ID__=-1,t})();function Xr(t,e,n){let i=n?t.styles:null,s=n?t.classes:null,r=0;if(null!==e)for(let o=0;oa(Me(t[i.index])).target:i.index;if(Fe(n)){let o=null;if(!a&&l&&(o=function(t,e,n,i){const s=t.cleanup;if(null!=s)for(let r=0;rn?t[n]:null}"string"==typeof t&&(r+=2)}return null}(t,e,s,i.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=r,o.__ngLastListenerFn__=r,u=!1;else{r=wo(i,e,r,!1);const t=n.listen(p.name||f,s,r);h.push(r,t),c&&c.push(s,g,m,m+1)}}else r=wo(i,e,r,!0),f.addEventListener(s,r,o),h.push(r),c&&c.push(s,g,m,o)}const d=i.outputs;let p;if(u&&null!==d&&(p=d[s])){const t=p.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,Ze.lFrame.contextLView))[8]}(t)}function Eo(t,e){let n=null;const i=function(t){const e=t.attrs;if(null!=e){const t=e.indexOf(5);if(0==(1&t))return e[t+1]}return null}(t);for(let s=0;s=0}function Do(t,e,n){return Po(t,e,n,!1),Do}function Ao(t,e){return Po(t,e,null,!0),Ao}function Po(t,e,n,i){const s=Ke(),r=Ye(),o=an(2);r.firstUpdatePass&&function(t,e,n,i){const s=t.data;if(null===s[n+1]){const r=s[bn()+20],o=function(t,e){return e>=t.expandoStartIndex}(t,n);(function(t,e){return 0!=(t.flags&(e?16:32))})(r,i)&&null===e&&!o&&(e=!1),e=function(t,e,n,i){const s=function(t){const e=Ze.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}(t);let r=i?e.residualClasses:e.residualStyles;if(null===s)0===(i?e.classBindings:e.styleBindings)&&(n=Ro(n=Oo(null,t,e,n,i),e.attrs,i),r=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==s)if(n=Oo(s,t,e,n,i),null===r){let n=function(t,e,n){const i=n?e.classBindings:e.styleBindings;if(0!==ms(i))return t[ps(i)]}(t,e,i);void 0!==n&&Array.isArray(n)&&(n=Oo(null,t,e,n[1],i),n=Ro(n,e.attrs,i),function(t,e,n,i){t[ps(n?e.classBindings:e.styleBindings)]=i}(t,e,i,n))}else r=function(t,e,n){let i=void 0;const s=e.directiveEnd;for(let r=1+e.directiveStylingLast;r0)&&(h=!0)}else c=n;if(s)if(0!==l){const e=ps(t[a+1]);t[i+1]=ds(e,a),0!==e&&(t[e+1]=gs(t[e+1],i)),t[a+1]=131071&t[a+1]|i<<17}else t[i+1]=ds(a,0),0!==a&&(t[a+1]=gs(t[a+1],i)),a=i;else t[i+1]=ds(l,0),0===a?a=i:t[l+1]=gs(t[l+1],i),l=i;h&&(t[i+1]=fs(t[i+1])),To(t,c,i,!0),To(t,c,i,!1),function(t,e,n,i,s){const r=s?t.residualClasses:t.residualStyles;null!=r&&"string"==typeof e&&re(r,e)>=0&&(n[i+1]=_s(n[i+1]))}(e,c,t,i,r),o=ds(a,l),r?e.classBindings=o:e.styleBindings=o}(s,r,e,n,o,i)}}(r,t,o,i),e!==rs&&so(s,o,e)&&function(t,e,n,i,s,r,o,a){if(3!==e.type)return;const l=t.data,c=l[a+1];Fo(1==(1&c)?No(l,e,n,s,ms(c),o):void 0)||(Fo(r)||function(t){return 2==(2&t)}(c)&&(r=No(l,null,n,s,a,o)),function(t,e,n,i,s){const r=Fe(t);if(e)s?r?t.addClass(n,i):n.classList.add(i):r?t.removeClass(n,i):n.classList.remove(i);else{const e=-1==i.indexOf("-")?void 0:2;null==s?r?t.removeStyle(n,i,e):n.style.removeProperty(i):r?t.setStyle(n,i,s,e):n.style.setProperty(i,s)}}(i,o,Le(bn(),n),s,r))}(r,r.data[bn()+20],s,s[11],t,s[o+1]=function(t,e){return null==t||("string"==typeof e?t+=e:"object"==typeof t&&(t=bt(gi(t)))),t}(e,n),i,o)}function Oo(t,e,n,i,s){let r=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[s],r=Array.isArray(e),l=r?e[1]:e,c=null===l;let h=n[s+1];h===rs&&(h=c?ko:void 0);let u=c?se(h,i):l===i?h:void 0;if(r&&!Fo(u)&&(u=se(e,i)),Fo(u)&&(a=u,o))return a;const d=t[s+1];s=o?ps(d):ms(d)}if(null!==e){let t=r?e.residualClasses:e.residualStyles;null!=t&&(a=se(t,i))}return a}function Fo(t){return void 0!==t}function Vo(t,e=""){const n=Ke(),i=Ye(),s=t+20,r=i.firstCreatePass?ws(i,n[6],t,3,null,null):i.data[s],o=n[s]=function(t,e){return Fe(e)?e.createText(t):e.createTextNode(t)}(e,n[11]);wr(i,n,o,r),tn(r,!1)}function Mo(t){return Lo("",t,""),Mo}function Lo(t,e,n){const i=Ke(),s=function(t,e,n,i){return so(t,on(),n)?e+Ln(n)+i:rs}(i,t,e,n);return s!==rs&&rr(i,bn(),s),Lo}function jo(t,e,n,i,s){const r=Ke(),o=function(t,e,n,i,s,r){const o=ro(t,Ze.lFrame.bindingIndex,n,s);return an(2),o?e+Ln(n)+i+Ln(s)+r:rs}(r,t,e,n,i,s);return o!==rs&&rr(r,bn(),o),jo}function Bo(t,e,n){const i=Ke();return so(i,on(),e)&&Ns(Ye(),wn(),i,t,e,i[11],n,!0),Bo}function Ho(t,e){const n=ze(t)[1],i=n.data.length-1;Cn(n,{directiveStart:i,directiveEnd:i+1})}function zo(t){let e=Object.getPrototypeOf(t.type.prototype).constructor,n=!0;const i=[t];for(;e;){let s=void 0;if(ke(t))s=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");s=e.\u0275dir}if(s){if(n){i.push(s);const e=t;e.inputs=qo(t.inputs),e.declaredInputs=qo(t.declaredInputs),e.outputs=qo(t.outputs);const n=s.hostBindings;n&&Go(t,n);const r=s.viewQuery,o=s.contentQueries;if(r&&$o(t,r),o&&Uo(t,o),lt(t.inputs,s.inputs),lt(t.declaredInputs,s.declaredInputs),lt(t.outputs,s.outputs),ke(s)&&s.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(s.data.animation)}}const e=s.features;if(e)for(let i=0;i=0;i--){const s=t[i];s.hostVars=e+=s.hostVars,s.hostAttrs=On(s.hostAttrs,n=On(n,s.hostAttrs))}}(i)}function qo(t){return t===le?{}:t===ce?[]:t}function $o(t,e){const n=t.viewQuery;t.viewQuery=n?(t,i)=>{e(t,i),n(t,i)}:e}function Uo(t,e){const n=t.contentQueries;t.contentQueries=n?(t,i,s)=>{e(t,i,s),n(t,i,s)}:e}function Go(t,e){const n=t.hostBindings;t.hostBindings=n?(t,i)=>{e(t,i),n(t,i)}:e}function Wo(t,e,n,i,s){if(t=Et(t),Array.isArray(t))for(let r=0;r>20;if(Kr(t)||!t.multi){const i=new In(l,s,lo),p=Ko(a,e,s?h:h+d,u);-1===p?(Qn(Un(c,o),r,a),Zo(r,t,e.length),e.push(a),c.directiveStart++,c.directiveEnd++,s&&(c.providerIndexes+=1048576),n.push(i),o.push(i)):(n[p]=i,o[p]=i)}else{const p=Ko(a,e,h+d,u),f=Ko(a,e,h,h+d),m=p>=0&&n[p],g=f>=0&&n[f];if(s&&!g||!s&&!m){Qn(Un(c,o),r,a);const h=function(t,e,n,i,s){const r=new In(t,n,lo);return r.multi=[],r.index=e,r.componentProviders=0,Qo(r,s,i&&!n),r}(s?Jo:Yo,n.length,s,i,l);!s&&g&&(n[f].providerFactory=h),Zo(r,t,e.length,0),e.push(a),c.directiveStart++,c.directiveEnd++,s&&(c.providerIndexes+=1048576),n.push(h),o.push(h)}else Zo(r,t,p>-1?p:f,Qo(n[s?f:p],l,!s&&i));!s&&i&&g&&n[f].componentProviders++}}}function Zo(t,e,n,i){const s=Kr(e);if(s||e.useClass){const r=(e.useClass||e).prototype.ngOnDestroy;if(r){const o=t.destroyHooks||(t.destroyHooks=[]);if(!s&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[i,r]):o[t+1].push(i,r)}else o.push(n,r)}}}function Qo(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function Ko(t,e,n,i){for(let s=n;s{n.providersResolver=(n,i)=>function(t,e,n){const i=Ye();if(i.firstCreatePass){const s=ke(t);Wo(n,i.data,i.blueprint,s,!0),Wo(e,i.data,i.blueprint,s,!1)}}(n,i?i(t):t,e)}}class ea{}class na{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${bt(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ia=(()=>{class t{}return t.NULL=new na,t})(),sa=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=()=>ra(t),t})();const ra=function(t){return Rr(t,Xe(),Ke())};class oa{}var aa=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});let la=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>ca(),t})();const ca=function(){const t=Ke(),e=He(Xe().index,t);return function(t){const e=t[11];if(Fe(e))return e;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(we(e)?e:t)};let ha=(()=>{class t{}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>null}),t})();class ua{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const da=new ua("10.0.5");class pa{constructor(){}supports(t){return no(t)}create(t){return new ma(t)}}const fa=(t,e)=>e;class ma{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||fa}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,i=0,s=null;for(;e||n;){const r=!n||e&&e.currentIndex{i=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,i)?(r&&(s=this._verifyReinsertion(s,t,i,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,i,e),r=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=e)t.previousIndex=t.currentIndex,e=t._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,i){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,i)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,i)):t=this._addAfter(new ga(e,n),s,i),t}_verifyReinsertion(t,e,n,i){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,i):t.currentIndex!=i&&(t.currentIndex=i,this._addToMoves(t,i)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const i=t._prevRemoved,s=t._nextRemoved;return null===i?this._removalsHead=s:i._nextRemoved=s,null===s?this._removalsTail=i:s._prevRemoved=i,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const i=null===e?this._itHead:e._next;return t._next=i,t._prev=e,null===i?this._itTail=t:i._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new ya),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ya),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class ga{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class _a{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class ya{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _a,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function ba(t,e,n){const i=t.previousIndex;if(null===i)return i;let s=0;return n&&i{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const i=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,i)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const i=n._prev,s=n._next;return i&&(i._next=s),s&&(s._prev=i),n._next=null,n._prev=null,n}const n=new Ca(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Ca{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Ea=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new rt,new it]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>new t([new pa])}),t})(),Sa=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new rt,new it]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>new t([new va])}),t})();const xa=[new va],ka=new Ea([new pa]),Ta=new Sa(xa);let Ia=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Da(t,sa),t})();const Da=function(t,e){return Nr(t,e,Xe(),Ke())};let Aa=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Pa(t,sa),t})();const Pa=function(t,e){return Fr(t,e,Xe(),Ke())},Oa={};class Ra extends ia{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=ye(t);return new Va(e,this.ngModule)}}function Na(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const Fa=new Mt("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Bn});class Va extends ea{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(ss).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Na(this.componentDef.inputs)}get outputs(){return Na(this.componentDef.outputs)}create(t,e,n,i){const s=(i=i||this.ngModule)?function(t,e){return{get:(n,i,s)=>{const r=t.get(n,Oa,s);return r!==Oa||i===Oa?r:e.get(n,i,s)}}}(t,i.injector):t,r=s.get(oa,Ve),o=s.get(ha,null),a=r.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(Fe(t))return t.selectRootElement(e,n===ae.ShadowDom);let i="string"==typeof e?t.querySelector(e):e;return i.textContent="",i}(a,n,this.componentDef.encapsulation):bs(l,r.createRenderer(null,this.componentDef),function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(l)),h=this.componentDef.onPush?576:528,u={components:[],scheduler:Bn,clean:er,playerHandler:null,flags:0},d=As(0,-1,null,1,0,null,null,null,null,null),p=vs(null,d,u,h,null,null,r,a,o,s);let f,m;pn(p,null);try{const t=function(t,e,n,i,s,r){const o=n[1];n[20]=t;const a=ws(o,null,0,3,null,null),l=a.mergedAttrs=e.hostAttrs;null!==l&&(Xr(a,l,!0),null!==t&&(Dn(s,t,l),null!==a.classes&&Tr(s,t,a.classes),null!==a.styles&&kr(s,t,a.styles)));const c=i.createRenderer(t,e),h=vs(n,Ds(e),null,e.onPush?64:16,n[20],a,i,c,void 0);return o.firstCreatePass&&(Qn(Un(a,n),o,e.type),Bs(o,a),zs(a,n.length,1)),Ks(n,h),n[20]=h}(c,this.componentDef,p,r,a);if(c)if(n)Dn(a,c,["ng-version",da.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let i=1,s=2;for(;i0&&Tr(a,c,e.join(" "))}if(m=Be(d,0),void 0!==e){const t=m.projection=[];for(let n=0;nt(o,e)),e.contentQueries&&e.contentQueries(1,o,n.length-1);const a=Xe();if(r.firstCreatePass&&(null!==e.hostBindings||null!==e.hostAttrs)){vn(a.index-20);const t=n[1];Vs(t,e),Ms(t,n,e.hostVars),Ls(e,o)}return o}(t,this.componentDef,p,u,[Ho]),Cs(d,p,null)}finally{yn()}const g=new Ma(this.componentType,f,Rr(sa,m,p),p,m);return d.node.child=m,g}}class Ma extends class{}{constructor(t,e,n,i,s){super(),this.location=n,this._rootLView=i,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Dr(i),function(t,e,n,i){let s=t.node;null==s&&(t.node=s=Os(0,null,2,-1,null,null)),i[6]=s}(i[1],0,0,i),this.componentType=t}get injector(){return new ii(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const La=void 0;var ja=["en",[["a","p"],["AM","PM"],La],[["AM","PM"],La,La],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],La,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],La,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",La,"{1} 'at' {0}",La],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let Ba={};function Ha(t){return t in Ba||(Ba[t]=Dt.ng&&Dt.ng.common&&Dt.ng.common.locales&&Dt.ng.common.locales[t]),Ba[t]}var za=function(t){return t[t.LocaleId=0]="LocaleId",t[t.DayPeriodsFormat=1]="DayPeriodsFormat",t[t.DayPeriodsStandalone=2]="DayPeriodsStandalone",t[t.DaysFormat=3]="DaysFormat",t[t.DaysStandalone=4]="DaysStandalone",t[t.MonthsFormat=5]="MonthsFormat",t[t.MonthsStandalone=6]="MonthsStandalone",t[t.Eras=7]="Eras",t[t.FirstDayOfWeek=8]="FirstDayOfWeek",t[t.WeekendRange=9]="WeekendRange",t[t.DateFormat=10]="DateFormat",t[t.TimeFormat=11]="TimeFormat",t[t.DateTimeFormat=12]="DateTimeFormat",t[t.NumberSymbols=13]="NumberSymbols",t[t.NumberFormats=14]="NumberFormats",t[t.CurrencyCode=15]="CurrencyCode",t[t.CurrencySymbol=16]="CurrencySymbol",t[t.CurrencyName=17]="CurrencyName",t[t.Currencies=18]="Currencies",t[t.Directionality=19]="Directionality",t[t.PluralCase=20]="PluralCase",t[t.ExtraData=21]="ExtraData",t}({});let qa="en-US";function $a(t){var e,n;n="Expected localeId to be defined",null==(e=t)&&function(t,e,n,i){throw new Error("ASSERTION ERROR: "+t+` [Expected=> null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(qa=t.toLowerCase().replace(/_/g,"-"))}const Ua=new Map;class Ga extends Jt{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Ra(this);const n=ve(t),i=t[Nt]||null;i&&$a(i),this._bootstrapComponents=Hn(n.bootstrap),this._r3Injector=$r(t,e,[{provide:Jt,useValue:this},{provide:ia,useValue:this.componentFactoryResolver}],bt(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Jr.THROW_IF_NOT_FOUND,n=ot.Default){return t===Jr||t===Jt||t===Lt?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Wa extends class{}{constructor(t){super(),this.moduleType=t,null!==ve(t)&&function t(e){if(null!==e.\u0275mod.id){const t=e.\u0275mod.id;(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${bt(e)} vs ${bt(e.name)}`)})(t,Ua.get(t),e),Ua.set(t,e)}let n=e.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(e=>t(e))}(t)}create(t){return new Ga(this.moduleType,t)}}const Za=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let i,s=t=>null,r=()=>null;t&&"object"==typeof t?(i=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(r=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(i=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(r=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(i,s,r);return t instanceof u&&t.add(o),o}};function Qa(){return this._results[eo()]()}class Ka{constructor(){this.dirty=!0,this._results=[],this.changes=new Za,this.length=0;const t=eo(),e=Ka.prototype;e[t]||(e[t]=Qa)}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let i=0;i0)s.push(a[e/2]);else{const r=o[e+1],a=n[-i];for(let e=10;e{class t{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Wt(ml,8))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const _l=new Mt("AppId"),yl={provide:_l,useFactory:function(){return`${bl()}${bl()}${bl()}`},deps:[]};function bl(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const vl=new Mt("Platform Initializer"),wl=new Mt("Platform ID"),Cl=new Mt("appBootstrapListener");let El=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Sl=new Mt("LocaleId"),xl=new Mt("DefaultCurrencyCode");class kl{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const Tl=function(t){return new Wa(t)},Il=Tl,Dl=function(t){return Promise.resolve(Tl(t))},Al=function(t){const e=Tl(t),n=Hn(ve(t).declarations).reduce((t,e)=>{const n=ye(e);return n&&t.push(new Va(n)),t},[]);return new kl(e,n)},Pl=Al,Ol=function(t){return Promise.resolve(Al(t))};let Rl=(()=>{class t{constructor(){this.compileModuleSync=Il,this.compileModuleAsync=Dl,this.compileModuleAndAllComponentsSync=Pl,this.compileModuleAndAllComponentsAsync=Ol}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Nl=(()=>Promise.resolve(0))();function Fl(t){"undefined"==typeof Zone?Nl.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Vl{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Za(!1),this.onMicrotaskEmpty=new Za(!1),this.onStable=new Za(!1),this.onError=new Za(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=e,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let t=Dt.requestAnimationFrame,e=Dt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const i=e[Zone.__symbol__("OriginalDelegate")];i&&(e=i)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(Dt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Bl(t),jl(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Bl(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,i,s,r,o,a)=>{try{return Hl(t),n.invokeTask(s,r,o,a)}finally{e&&"eventTask"===r.type&&e(),zl(t)}},onInvoke:(e,n,i,s,r,o,a)=>{try{return Hl(t),e.invoke(i,s,r,o,a)}finally{zl(t)}},onHasTask:(e,n,i,s)=>{e.hasTask(i,s),n===i&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Bl(t),jl(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,i,s)=>(e.handleError(i,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Vl.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Vl.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,i){const s=this._inner,r=s.scheduleEventTask("NgZoneEvent: "+i,t,Ll,Ml,Ml);try{return s.runTask(r,e,n)}finally{s.cancelTask(r)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function Ml(){}const Ll={};function jl(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Bl(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function Hl(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function zl(t){t._nesting--,jl(t)}class ql{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Za,this.onMicrotaskEmpty=new Za,this.onStable=new Za,this.onError=new Za}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,i){return t.apply(e,n)}}let $l=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Vl.assertNotInAngularZone(),Fl(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Fl(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let i=-1;e&&e>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==i),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Ul=(()=>{class t{constructor(){this._applications=new Map,Zl.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Zl.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class Gl{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Wl,Zl=new Gl;const Ql=new Mt("AllowMultipleToken");function Kl(t,e,n=[]){const i="Platform: "+e,s=new Mt(i);return(e=[])=>{let r=Yl();if(!r||r.injector.get(Ql,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Lr,useValue:"platform"});!function(t){if(Wl&&!Wl.destroyed&&!Wl.injector.get(Ql,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Wl=t.get(Jl);const e=t.get(vl,null);e&&e.forEach(t=>t())}(Jr.create({providers:t,name:i}))}return function(t){const e=Yl();if(!e)throw new Error("No platform exists!");if(!e.injector.get(t,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return e}(s)}}function Yl(){return Wl&&!Wl.destroyed?Wl:null}let Jl=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new ql:("zone.js"===t?void 0:t)||new Vl({enableLongStackTrace:wi(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),i=[{provide:Vl,useValue:n}];return n.run(()=>{const e=Jr.create({providers:i,parent:this.injector,name:t.moduleType.name}),s=t.create(e),r=s.injector.get(ci,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>ec(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{r.handleError(t)}})),function(t,e,n){try{const i=n();return yo(i)?i.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):i}catch(i){throw e.runOutsideAngular(()=>t.handleError(i)),i}}(r,n,()=>{const t=s.injector.get(gl);return t.runInitializers(),t.donePromise.then(()=>($a(s.injector.get(Sl,"en-US")||"en-US"),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Xl({},e);return function(t,e,n){const i=new Wa(n);return Promise.resolve(i)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(tc);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${bt(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Wt(Jr))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();function Xl(t,e){return Array.isArray(e)?e.reduce(Xl,t):Object.assign(Object.assign({},t),e)}let tc=(()=>{class t{constructor(t,e,n,i,s,r){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=i,this._componentFactoryResolver=s,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=wi(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new y(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),a=new y(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Vl.assertNotInAngularZone(),Fl(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Vl.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=U(o,a.pipe(X()))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ea?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const i=n.isBoundToModule?void 0:this._injector.get(Jt),s=n.create(Jr.NULL,[],e||n.selector,i);s.onDestroy(()=>{this._unloadComponent(s)});const r=s.injector.get($l,null);return r&&s.injector.get(Ul).registerApplication(s.location.nativeElement,r),this._loadComponent(s),wi()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;ec(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Cl,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),ec(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(El),Wt(Jr),Wt(ci),Wt(ia),Wt(gl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();function ec(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const nc=Kl(null,"core",[{provide:wl,useValue:"unknown"},{provide:Jl,deps:[Jr]},{provide:Ul,deps:[]},{provide:El,deps:[]}]),ic=[{provide:tc,useClass:tc,deps:[Vl,El,Jr,ci,ia,gl]},{provide:Fa,deps:[Vl],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:gl,useClass:gl,deps:[[new it,ml]]},{provide:Rl,useClass:Rl,deps:[]},yl,{provide:Ea,useFactory:function(){return ka},deps:[]},{provide:Sa,useFactory:function(){return Ta},deps:[]},{provide:Sl,useFactory:function(t){return $a(t=t||"undefined"!=typeof $localize&&$localize.locale||"en-US"),t},deps:[[new nt(Sl),new it,new rt]]},{provide:xl,useValue:"USD"}];let sc=(()=>{class t{constructor(t){}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(tc))},providers:ic}),t})(),rc=null;function oc(){return rc}const ac=new Mt("DocumentToken");var lc=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class cc{}let hc=(()=>{class t extends cc{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=Ha(e);if(n)return n;const i=e.split("-")[0];if(n=Ha(i),n)return n;if("en"===i)return ja;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[za.PluralCase]}(e||this.locale)(t)){case lc.Zero:return"zero";case lc.One:return"one";case lc.Two:return"two";case lc.Few:return"few";case lc.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Sl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class uc{constructor(t,e,n,i){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=i}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let dc=(()=>{class t{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){wi()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. See https://angular.io/api/common/NgForOf#change-propagation for more information.`),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,i)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new uc(null,this._ngForOf,-1,-1),null===i?void 0:i),s=new pc(t,n);e.push(s)}else if(null==i)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const s=this._viewContainer.get(n);this._viewContainer.move(s,i);const r=new pc(t,s);e.push(r)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia),lo(Ea))},t.\u0275dir=_e({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class pc{constructor(t,e){this.record=t,this.view=e}}let fc=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new mc,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){gc("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){gc("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia))},t.\u0275dir=_e({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class mc{constructor(){this.$implicit=null,this.ngIf=null}}function gc(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${bt(e)}'.`)}class _c{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}let yc=(()=>{class t{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const e=t==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||e,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),e}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e{class t{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new _c(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia),lo(yc,1))},t.\u0275dir=_e({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),vc=(()=>{class t{constructor(t,e,n){this._ngEl=t,this._differs=e,this._renderer=n,this._ngStyle=null,this._differ=null}set ngStyle(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())}ngDoCheck(){if(this._differ){const t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}}_setStyle(t,e){const[n,i]=t.split(".");null!=(e=null!=e&&i?`${e}${i}`:e)?this._renderer.setStyle(this._ngEl.nativeElement,n,e):this._renderer.removeStyle(this._ngEl.nativeElement,n)}_applyChanges(t){t.forEachRemovedItem(t=>this._setStyle(t.key,null)),t.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),t.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Sa),lo(la))},t.\u0275dir=_e({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})(),wc=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[{provide:cc,useClass:hc}]}),t})();class Cc extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Cc,rc||(rc=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Sc||(Sc=document.querySelector("base"),Sc)?Sc.getAttribute("href"):null;return null==e?null:(n=e,Ec||(Ec=document.createElement("a")),Ec.setAttribute("href",n),"/"===Ec.pathname.charAt(0)?Ec.pathname:"/"+Ec.pathname);var n}resetBaseElement(){Sc=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[i,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(i.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Ec,Sc=null;const xc=new Mt("TRANSITION_ID"),kc=[{provide:ml,useFactory:function(t,e,n){return()=>{n.get(gl).donePromise.then(()=>{const n=oc();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[xc,ac,Jr],multi:!0}];class Tc{static init(){var t;t=new Tc,Zl=t}addToWindow(t){Dt.getAngularTestability=(e,n=!0)=>{const i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},Dt.getAllAngularTestabilities=()=>t.getAllTestabilities(),Dt.getAllAngularRootElements=()=>t.getAllRootElements(),Dt.frameworkStabilizers||(Dt.frameworkStabilizers=[]),Dt.frameworkStabilizers.push(t=>{const e=Dt.getAllAngularTestabilities();let n=e.length,i=!1;const s=function(e){i=i||e,n--,0==n&&t(i)};e.forEach((function(t){t.whenStable(s)}))})}findTestabilityInTree(t,e,n){if(null==e)return null;const i=t.getTestability(e);return null!=i?i:n?oc().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const Ic=new Mt("EventManagerPlugins");let Dc=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let i=0;i{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Oc=(()=>{class t extends Pc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>oc().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Rc={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},Nc=/%COMP%/g;function Fc(t,e,n){for(let i=0;i{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let Mc=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new Lc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case ae.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new jc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case ae.Native:case ae.ShadowDom:return new Bc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=Fc(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dc),Wt(Oc),Wt(_l))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class Lc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(Rc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,i){if(i){e=i+":"+e;const s=Rc[i];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const i=Rc[n];i?t.removeAttributeNS(i,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,i){i&aa.DashCase?t.style.setProperty(e,n,i&aa.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&aa.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,Vc(n)):this.eventManager.addEventListener(t,e,Vc(n))}}class jc extends Lc{constructor(t,e,n,i){super(t),this.component=n;const s=Fc(i+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(Nc,i+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(Nc,t)}(i+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Bc extends Lc{constructor(t,e,n,i){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=i,this.shadowRoot=i.encapsulation===ae.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const s=Fc(i.id,i.styles,[]);for(let r=0;r{class t extends Ac{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const zc=["alt","control","meta","shift"],qc={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},$c={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},Uc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let Gc=(()=>{class t extends Ac{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,i){const s=t.parseEventName(n),r=t.eventCallback(s.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>oc().onAndCancel(e,s.domEventName,r))}static parseEventName(e){const n=e.toLowerCase().split("."),i=n.shift();if(0===n.length||"keydown"!==i&&"keyup"!==i)return null;const s=t._normalizeKey(n.pop());let r="";if(zc.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),r+=t+".")}),r+=s,0!=n.length||0===s.length)return null;const o={};return o.domEventName=i,o.fullKey=r,o}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&$c.hasOwnProperty(e)&&(e=$c[e]))}return qc[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),zc.forEach(i=>{i!=n&&(0,Uc[i])(t)&&(e+=i+".")}),e+=n,e}static eventCallback(e,n,i){return s=>{t.getEventFullKey(s)===e&&i.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Wc=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return Wt(Zc)},token:t,providedIn:"root"}),t})(),Zc=(()=>{class t extends Wc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case $i.NONE:return e;case $i.HTML:return _i(e,"HTML")?gi(e):function(t,e){let n=null;try{zi=zi||function(t){return function(){try{return!!(new window.DOMParser).parseFromString("","text/html")}catch(t){return!1}}()?new Ci:new Ei(t)}(t);let i=e?String(e):"";n=zi.getInertBodyElement(i);let s=5,r=i;do{if(0===s)throw new Error("Failed to sanitize html because the input is unstable");s--,i=r,r=n.innerHTML,n=zi.getInertBodyElement(i)}while(i!==r);const o=new Li,a=o.sanitizeChildren(qi(n)||n);return wi()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n){const t=qi(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e));case $i.STYLE:return _i(e,"Style")?gi(e):e;case $i.SCRIPT:if(_i(e,"Script"))return gi(e);throw new Error("unsafe value used in a script context");case $i.URL:return yi(e),_i(e,"URL")?gi(e):ki(String(e));case $i.RESOURCE_URL:if(_i(e,"ResourceURL"))return gi(e);throw new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see http://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(t){return new ui(t)}bypassSecurityTrustStyle(t){return new di(t)}bypassSecurityTrustScript(t){return new pi(t)}bypassSecurityTrustUrl(t){return new fi(t)}bypassSecurityTrustResourceUrl(t){return new mi(t)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({factory:function(){return t=Wt(Lt),new Zc(t.get(ac));var t},token:t,providedIn:"root"}),t})();const Qc=Kl(nc,"browser",[{provide:wl,useValue:"browser"},{provide:vl,useValue:function(){Cc.makeCurrent(),Tc.init()},multi:!0},{provide:ac,useFactory:function(){return function(t){Ne=t}(document),document},deps:[]}]),Kc=[[],{provide:Lr,useValue:"root"},{provide:ci,useFactory:function(){return new ci},deps:[]},{provide:Ic,useClass:Hc,multi:!0,deps:[ac,Vl,wl]},{provide:Ic,useClass:Gc,multi:!0,deps:[ac]},[],{provide:Mc,useClass:Mc,deps:[Dc,Oc,_l]},{provide:oa,useExisting:Mc},{provide:Pc,useExisting:Oc},{provide:Oc,useClass:Oc,deps:[ac]},{provide:$l,useClass:$l,deps:[Vl]},{provide:Dc,useClass:Dc,deps:[Ic,Vl]},[]];let Yc=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:_l,useValue:e.appId},{provide:xc,useExisting:_l},kc]}}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(t,12))},providers:Kc,imports:[wc,sc]}),t})();function Jc(t){return null!=t&&""+t!="false"}function Xc(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function th(t){return t instanceof sa?t.nativeElement:t}function eh(...t){let e=t[t.length-1];return x(e)?(t.pop(),L(t,e)):$(t)}function nh(t,e,n,s){return i(n)&&(s=n,n=void 0),s?nh(t,e,n).pipe(F(t=>l(t)?s(...t):s(t))):new y(i=>{!function t(e,n,i,s,r){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,i,r),o=()=>t.removeEventListener(n,i,r)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,i),o=()=>t.off(n,i)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,i),o=()=>t.removeListener(n,i)}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,a=e.length;o1?Array.prototype.slice.call(arguments):t)}),i,n)})}"undefined"!=typeof window&&window;class ih extends u{constructor(t,e){super()}schedule(t,e=0){return this}}class sh extends ih{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,i=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(i,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(i,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,i=void 0;try{this.work(t)}catch(s){n=!0,i=!!s&&s||new Error(s)}if(n)return this.unsubscribe(),i}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,i=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==i&&n.splice(i,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class rh extends sh{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}let oh=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=()=>Date.now(),t})();class ah extends oh{constructor(t,e=oh.now){super(t,()=>ah.delegate&&ah.delegate!==this?ah.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return ah.delegate&&ah.delegate!==this?ah.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let n;this.active=!0;do{if(n=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,n){for(;t=e.shift();)t.unsubscribe();throw n}}}class lh extends ah{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,s=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i=0}function fh(t){const{index:e,period:n,subscriber:i}=t;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}}function mh(t,e=hh){return n=()=>function(t=0,e,n){let i=-1;return ph(e)?i=Number(e)<1?1:Number(e):x(e)&&(n=e),x(n)||(n=hh),new y(e=>{const s=ph(t)?t:+t-n.now();return n.schedule(fh,s,{index:0,period:i,subscriber:e})})}(t,e),function(t){return t.lift(new uh(n))};var n}function gh(t,e){return function(n){return n.lift(new _h(t,e))}}class _h{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new yh(t,this.predicate,this.thisArg))}}class yh extends f{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function bh(t){return e=>e.lift(new vh(t))}class vh{constructor(t){this.notifier=t}call(t,e){const n=new wh(t),i=R(n,this.notifier);return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n}}class wh extends N{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,i,s){this.seenValue=!0,this.complete()}notifyComplete(){}}function Ch(...t){return q(1)(eh(...t))}function Eh(...t){const e=t[t.length-1];return x(e)?(t.pop(),n=>Ch(t,n,e)):e=>Ch(t,e)}class Sh{constructor(t){this.project=t}call(t,e){return e.subscribe(new xh(t,this.project))}}class xh extends N{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this._innerSub(e,t,n)}_innerSub(t,e,n){const i=this.innerSubscription;i&&i.unsubscribe();const s=new k(this,e,n),r=this.destination;r.add(s),this.innerSubscription=R(this,t,void 0,void 0,s),this.innerSubscription!==s&&r.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,i,s){this.destination.next(e)}}const kh=new y(t=>t.complete());let Th;try{Th="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(P_){Th=!1}let Ih,Dh=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?"browser"===this._platformId:"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!Th)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}}return t.\u0275fac=function(e){return new(e||t)(Wt(wl))},t.\u0275prov=ct({factory:function(){return new t(Wt(wl))},token:t,providedIn:"root"}),t})(),Ah=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();const Ph=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function Oh(){if(Ih)return Ih;if("object"!=typeof document||!document)return Ih=new Set(Ph),Ih;let t=document.createElement("input");return Ih=new Set(Ph.filter(e=>(t.setAttribute("type",e),t.type===e))),Ih}let Rh,Nh;function Fh(t){return function(){if(null==Rh&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>Rh=!0}))}finally{Rh=Rh||!1}return Rh}()?t:!!t.capture}const Vh=new Mt("cdk-dir-doc",{providedIn:"root",factory:function(){return Zt(ac)}});let Mh=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Za,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vh,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(Vh,8))},token:t,providedIn:"root"}),t})(),Lh=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})(),jh=(()=>{class t{constructor(t,e,n){this._ngZone=t,this._platform=e,this._scrolled=new E,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=n}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=20){return this._platform.isBrowser?new y(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(mh(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):eh()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(gh(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,i)=>{this._scrollableContainsElement(i,t)&&e.push(i)}),e}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_scrollableContainsElement(t,e){let n=e.nativeElement,i=t.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>nh(this._getWindow().document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(Dh),Wt(ac,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(Vl),Wt(Dh),Wt(ac,8))},token:t,providedIn:"root"}),t})(),Bh=(()=>{class t{constructor(t,e,n){this._platform=t,this._document=n,e.runOutsideAngular(()=>{const e=this._getWindow();this._change=t.isBrowser?U(nh(e,"resize"),nh(e,"orientationchange")):eh(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=this._getDocument(),e=this._getWindow(),n=t.documentElement,i=n.getBoundingClientRect();return{top:-i.top||t.body.scrollTop||e.scrollY||n.scrollTop||0,left:-i.left||t.body.scrollLeft||e.scrollX||n.scrollLeft||0}}change(t=20){return t>0?this._change.pipe(mh(t)):this._change}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_updateViewportSize(){const t=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:t.innerWidth,height:t.innerHeight}:{width:0,height:0}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dh),Wt(Vl),Wt(ac,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(Dh),Wt(Vl),Wt(ac,8))},token:t,providedIn:"root"}),t})(),Hh=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();function zh(t){const{subscriber:e,counter:n,period:i}=t;e.next(n),this.schedule({subscriber:e,counter:n+1,period:i},i)}const qh=(()=>{function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t})();function $h(t){return e=>0===t?kh:e.lift(new Uh(t))}class Uh{constructor(t){if(this.total=t,this.total<0)throw new qh}call(t,e){return e.subscribe(new Gh(t,this.total))}}class Gh extends f{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function Wh(){}function Zh(t,e,n){return function(i){return i.lift(new Qh(t,e,n))}}class Qh{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new Kh(t,this.nextOrObserver,this.error,this.complete))}}class Kh extends f{constructor(t,e,n,s){super(t),this._tapNext=Wh,this._tapError=Wh,this._tapComplete=Wh,this._tapError=n||Wh,this._tapComplete=s||Wh,i(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||Wh,this._tapError=e.error||Wh,this._tapComplete=e.complete||Wh)}_next(t){try{this._tapNext.call(this._context,t)}catch(e){return void this.destination.error(e)}this.destination.next(t)}_error(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}function Yh(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function Jh(t,e){const n=e?"":"none";Yh(t.style,{touchAction:e?"":"none",webkitUserDrag:e?"":"none",webkitTapHighlightColor:e?"":"transparent",userSelect:n,msUserSelect:n,webkitUserSelect:n,MozUserSelect:n})}function Xh(t){const e=t.toLowerCase().indexOf("ms")>-1?1:1e3;return parseFloat(t)*e}function tu(t,e){return t.getPropertyValue(e).split(",").map(t=>t.trim())}function eu(t){const e=t.getBoundingClientRect();return{top:e.top,right:e.right,bottom:e.bottom,left:e.left,width:e.width,height:e.height}}function nu(t,e,n){const{top:i,bottom:s,left:r,right:o}=t;return n>=i&&n<=s&&e>=r&&e<=o}function iu(t,e,n){t.top+=e,t.bottom=t.top+t.height,t.left+=n,t.right=t.left+t.width}function su(t,e,n,i){const{top:s,right:r,bottom:o,left:a,width:l,height:c}=t,h=l*e,u=c*e;return i>s-u&&ia-h&&n{this.positions.set(t,{scrollPosition:{top:t.scrollTop,left:t.scrollLeft},clientRect:eu(t)})})}handleScroll(t){const e=t.target,n=this.positions.get(e);if(!n)return null;const i=e===this._document?e.documentElement:e,s=n.scrollPosition;let r,o;if(e===this._document){const t=this._viewportRuler.getViewportScrollPosition();r=t.top,o=t.left}else r=e.scrollTop,o=e.scrollLeft;const a=s.top-r,l=s.left-o;return this.positions.forEach((t,n)=>{t.clientRect&&e!==n&&i.contains(n)&&iu(t.clientRect,a,l)}),s.top=r,s.left=o,{top:a,left:l}}}const ou=Fh({passive:!0}),au=Fh({passive:!1});class lu{constructor(t,e,n,i,s,r){this._config=e,this._document=n,this._ngZone=i,this._viewportRuler=s,this._dragDropRegistry=r,this._passiveTransform={x:0,y:0},this._activeTransform={x:0,y:0},this._moveEvents=new E,this._pointerMoveSubscription=u.EMPTY,this._pointerUpSubscription=u.EMPTY,this._scrollSubscription=u.EMPTY,this._resizeSubscription=u.EMPTY,this._boundaryElement=null,this._nativeInteractionsEnabled=!0,this._handles=[],this._disabledHandles=new Set,this._direction="ltr",this.dragStartDelay=0,this._disabled=!1,this.beforeStarted=new E,this.started=new E,this.released=new E,this.ended=new E,this.entered=new E,this.exited=new E,this.dropped=new E,this.moved=this._moveEvents.asObservable(),this._pointerDown=t=>{if(this.beforeStarted.next(),this._handles.length){const e=this._handles.find(e=>{const n=t.target;return!!n&&(n===e||e.contains(n))});!e||this._disabledHandles.has(e)||this.disabled||this._initializeDragSequence(e,t)}else this.disabled||this._initializeDragSequence(this._rootElement,t)},this._pointerMove=t=>{t.preventDefault();const e=this._getPointerPositionOnPage(t);if(!this._hasStartedDragging){if(Math.abs(e.x-this._pickupPositionOnPage.x)+Math.abs(e.y-this._pickupPositionOnPage.y)>=this._config.dragStartThreshold){if(!(Date.now()>=this._dragStartTime+this._getDragStartDelay(t)))return void this._endDragSequence(t);this._dropContainer&&this._dropContainer.isDragging()||(this._hasStartedDragging=!0,this._ngZone.run(()=>this._startDragSequence(t)))}return}this._boundaryElement&&(this._previewRect&&(this._previewRect.width||this._previewRect.height)||(this._previewRect=(this._preview||this._rootElement).getBoundingClientRect()));const n=this._getConstrainedPointerPosition(e);if(this._hasMoved=!0,this._lastKnownPointerPosition=e,this._updatePointerDirectionDelta(n),this._dropContainer)this._updateActiveDropContainer(n,e);else{const t=this._activeTransform;t.x=n.x-this._pickupPositionOnPage.x+this._passiveTransform.x,t.y=n.y-this._pickupPositionOnPage.y+this._passiveTransform.y,this._applyRootElementTransform(t.x,t.y),"undefined"!=typeof SVGElement&&this._rootElement instanceof SVGElement&&this._rootElement.setAttribute("transform",`translate(${t.x} ${t.y})`)}this._moveEvents.observers.length&&this._ngZone.run(()=>{this._moveEvents.next({source:this,pointerPosition:n,event:t,distance:this._getDragDistance(n),delta:this._pointerDirectionDelta})})},this._pointerUp=t=>{this._endDragSequence(t)},this.withRootElement(t),this._parentPositions=new ru(n,s),r.registerDragItem(this)}get disabled(){return this._disabled||!(!this._dropContainer||!this._dropContainer.disabled)}set disabled(t){const e=Jc(t);e!==this._disabled&&(this._disabled=e,this._toggleNativeDragInteractions())}getPlaceholderElement(){return this._placeholder}getRootElement(){return this._rootElement}getVisibleElement(){return this.isDragging()?this.getPlaceholderElement():this.getRootElement()}withHandles(t){return this._handles=t.map(t=>th(t)),this._handles.forEach(t=>Jh(t,!1)),this._toggleNativeDragInteractions(),this}withPreviewTemplate(t){return this._previewTemplate=t,this}withPlaceholderTemplate(t){return this._placeholderTemplate=t,this}withRootElement(t){const e=th(t);return e!==this._rootElement&&(this._rootElement&&this._removeRootElementListeners(this._rootElement),this._ngZone.runOutsideAngular(()=>{e.addEventListener("mousedown",this._pointerDown,au),e.addEventListener("touchstart",this._pointerDown,ou)}),this._initialTransform=void 0,this._rootElement=e),"undefined"!=typeof SVGElement&&this._rootElement instanceof SVGElement&&(this._ownerSVGElement=this._rootElement.ownerSVGElement),this}withBoundaryElement(t){return this._boundaryElement=t?th(t):null,this._resizeSubscription.unsubscribe(),t&&(this._resizeSubscription=this._viewportRuler.change(10).subscribe(()=>this._containInsideBoundaryOnResize())),this}dispose(){this._removeRootElementListeners(this._rootElement),this.isDragging()&&du(this._rootElement),du(this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._dragDropRegistry.removeDragItem(this),this._removeSubscriptions(),this.beforeStarted.complete(),this.started.complete(),this.released.complete(),this.ended.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this._moveEvents.complete(),this._handles=[],this._disabledHandles.clear(),this._dropContainer=void 0,this._resizeSubscription.unsubscribe(),this._parentPositions.clear(),this._boundaryElement=this._rootElement=this._ownerSVGElement=this._placeholderTemplate=this._previewTemplate=this._anchor=null}isDragging(){return this._hasStartedDragging&&this._dragDropRegistry.isDragging(this)}reset(){this._rootElement.style.transform=this._initialTransform||"",this._activeTransform={x:0,y:0},this._passiveTransform={x:0,y:0}}disableHandle(t){this._handles.indexOf(t)>-1&&this._disabledHandles.add(t)}enableHandle(t){this._disabledHandles.delete(t)}withDirection(t){return this._direction=t,this}_withDropContainer(t){this._dropContainer=t}getFreeDragPosition(){const t=this.isDragging()?this._activeTransform:this._passiveTransform;return{x:t.x,y:t.y}}setFreeDragPosition(t){return this._activeTransform={x:0,y:0},this._passiveTransform.x=t.x,this._passiveTransform.y=t.y,this._dropContainer||this._applyRootElementTransform(t.x,t.y),this}_sortFromLastPointerPosition(){const t=this._lastKnownPointerPosition;t&&this._dropContainer&&this._updateActiveDropContainer(this._getConstrainedPointerPosition(t),t)}_removeSubscriptions(){this._pointerMoveSubscription.unsubscribe(),this._pointerUpSubscription.unsubscribe(),this._scrollSubscription.unsubscribe()}_destroyPreview(){this._preview&&du(this._preview),this._previewRef&&this._previewRef.destroy(),this._preview=this._previewRef=null}_destroyPlaceholder(){this._placeholder&&du(this._placeholder),this._placeholderRef&&this._placeholderRef.destroy(),this._placeholder=this._placeholderRef=null}_endDragSequence(t){this._dragDropRegistry.isDragging(this)&&(this._removeSubscriptions(),this._dragDropRegistry.stopDragging(this),this._toggleNativeDragInteractions(),this._handles&&(this._rootElement.style.webkitTapHighlightColor=this._rootElementTapHighlight),this._hasStartedDragging&&(this.released.next({source:this}),this._dropContainer?(this._dropContainer._stopScrolling(),this._animatePreviewToPlaceholder().then(()=>{this._cleanupDragArtifacts(t),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)})):(this._passiveTransform.x=this._activeTransform.x,this._passiveTransform.y=this._activeTransform.y,this._ngZone.run(()=>{this.ended.next({source:this,distance:this._getDragDistance(this._getPointerPositionOnPage(t))})}),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this))))}_startDragSequence(t){pu(t)&&(this._lastTouchEventTime=Date.now()),this._toggleNativeDragInteractions();const e=this._dropContainer;if(e){const t=this._rootElement,i=t.parentNode,s=this._preview=this._createPreviewElement(),r=this._placeholder=this._createPlaceholderElement(),o=this._anchor=this._anchor||this._document.createComment("");i.insertBefore(o,t),t.style.display="none",this._document.body.appendChild(i.replaceChild(r,t)),(n=this._document,n.fullscreenElement||n.webkitFullscreenElement||n.mozFullScreenElement||n.msFullscreenElement||n.body).appendChild(s),this.started.next({source:this}),e.start(),this._initialContainer=e,this._initialIndex=e.getItemIndex(this)}else this.started.next({source:this}),this._initialContainer=this._initialIndex=void 0;var n;this._parentPositions.cache(e?e.getScrollableParents():[])}_initializeDragSequence(t,e){e.stopPropagation();const n=this.isDragging(),i=pu(e),s=!i&&0!==e.button,r=this._rootElement,o=!i&&this._lastTouchEventTime&&this._lastTouchEventTime+800>Date.now();if(e.target&&e.target.draggable&&"mousedown"===e.type&&e.preventDefault(),n||s||o)return;this._handles.length&&(this._rootElementTapHighlight=r.style.webkitTapHighlightColor||"",r.style.webkitTapHighlightColor="transparent"),this._hasStartedDragging=this._hasMoved=!1,this._removeSubscriptions(),this._pointerMoveSubscription=this._dragDropRegistry.pointerMove.subscribe(this._pointerMove),this._pointerUpSubscription=this._dragDropRegistry.pointerUp.subscribe(this._pointerUp),this._scrollSubscription=this._dragDropRegistry.scroll.subscribe(t=>{this._updateOnScroll(t)}),this._boundaryElement&&(this._boundaryRect=eu(this._boundaryElement));const a=this._previewTemplate;this._pickupPositionInElement=a&&a.template&&!a.matchSize?{x:0,y:0}:this._getPointerPositionInElement(t,e);const l=this._pickupPositionOnPage=this._lastKnownPointerPosition=this._getPointerPositionOnPage(e);this._pointerDirectionDelta={x:0,y:0},this._pointerPositionAtLastDirectionChange={x:l.x,y:l.y},this._dragStartTime=Date.now(),this._dragDropRegistry.startDragging(this,e)}_cleanupDragArtifacts(t){this._rootElement.style.display="",this._anchor.parentNode.replaceChild(this._rootElement,this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._boundaryRect=this._previewRect=void 0,this._ngZone.run(()=>{const e=this._dropContainer,n=e.getItemIndex(this),i=this._getPointerPositionOnPage(t),s=this._getDragDistance(this._getPointerPositionOnPage(t)),r=e._isOverContainer(i.x,i.y);this.ended.next({source:this,distance:s}),this.dropped.next({item:this,currentIndex:n,previousIndex:this._initialIndex,container:e,previousContainer:this._initialContainer,isPointerOverContainer:r,distance:s}),e.drop(this,n,this._initialContainer,r,s,this._initialIndex),this._dropContainer=this._initialContainer})}_updateActiveDropContainer({x:t,y:e},{x:n,y:i}){let s=this._initialContainer._getSiblingContainerFromPosition(this,t,e);!s&&this._dropContainer!==this._initialContainer&&this._initialContainer._isOverContainer(t,e)&&(s=this._initialContainer),s&&s!==this._dropContainer&&this._ngZone.run(()=>{this.exited.next({item:this,container:this._dropContainer}),this._dropContainer.exit(this),this._dropContainer=s,this._dropContainer.enter(this,t,e,s===this._initialContainer&&s.sortingDisabled?this._initialIndex:void 0),this.entered.next({item:this,container:s,currentIndex:s.getItemIndex(this)})}),this._dropContainer._startScrollingIfNecessary(n,i),this._dropContainer._sortItem(this,t,e,this._pointerDirectionDelta),this._preview.style.transform=cu(t-this._pickupPositionInElement.x,e-this._pickupPositionInElement.y)}_createPreviewElement(){const t=this._previewTemplate,e=this.previewClass,n=t?t.template:null;let i;if(n&&t){const e=t.matchSize?this._rootElement.getBoundingClientRect():null,s=t.viewContainer.createEmbeddedView(n,t.context);s.detectChanges(),i=fu(s,this._document),this._previewRef=s,t.matchSize?mu(i,e):i.style.transform=cu(this._pickupPositionOnPage.x,this._pickupPositionOnPage.y)}else{const t=this._rootElement;i=hu(t),mu(i,t.getBoundingClientRect())}return Yh(i.style,{pointerEvents:"none",margin:"0",position:"fixed",top:"0",left:"0",zIndex:""+(this._config.zIndex||1e3)}),Jh(i,!1),i.classList.add("cdk-drag-preview"),i.setAttribute("dir",this._direction),e&&(Array.isArray(e)?e.forEach(t=>i.classList.add(t)):i.classList.add(e)),i}_animatePreviewToPlaceholder(){if(!this._hasMoved)return Promise.resolve();const t=this._placeholder.getBoundingClientRect();this._preview.classList.add("cdk-drag-animating"),this._preview.style.transform=cu(t.left,t.top);const e=function(t){const e=getComputedStyle(t),n=tu(e,"transition-property"),i=n.find(t=>"transform"===t||"all"===t);if(!i)return 0;const s=n.indexOf(i),r=tu(e,"transition-duration"),o=tu(e,"transition-delay");return Xh(r[s])+Xh(o[s])}(this._preview);return 0===e?Promise.resolve():this._ngZone.runOutsideAngular(()=>new Promise(t=>{const n=e=>{(!e||e.target===this._preview&&"transform"===e.propertyName)&&(this._preview.removeEventListener("transitionend",n),t(),clearTimeout(i))},i=setTimeout(n,1.5*e);this._preview.addEventListener("transitionend",n)}))}_createPlaceholderElement(){const t=this._placeholderTemplate,e=t?t.template:null;let n;return e?(this._placeholderRef=t.viewContainer.createEmbeddedView(e,t.context),this._placeholderRef.detectChanges(),n=fu(this._placeholderRef,this._document)):n=hu(this._rootElement),n.classList.add("cdk-drag-placeholder"),n}_getPointerPositionInElement(t,e){const n=this._rootElement.getBoundingClientRect(),i=t===this._rootElement?null:t,s=i?i.getBoundingClientRect():n,r=pu(e)?e.targetTouches[0]:e,o=this._getViewportScrollPosition();return{x:s.left-n.left+(r.pageX-s.left-o.left),y:s.top-n.top+(r.pageY-s.top-o.top)}}_getPointerPositionOnPage(t){const e=this._getViewportScrollPosition(),n=pu(t)?t.touches[0]||t.changedTouches[0]||{pageX:0,pageY:0}:t,i=n.pageX-e.left,s=n.pageY-e.top;if(this._ownerSVGElement){const t=this._ownerSVGElement.getScreenCTM();if(t){const e=this._ownerSVGElement.createSVGPoint();return e.x=i,e.y=s,e.matrixTransform(t.inverse())}}return{x:i,y:s}}_getConstrainedPointerPosition(t){const e=this._dropContainer?this._dropContainer.lockAxis:null;let{x:n,y:i}=this.constrainPosition?this.constrainPosition(t,this):t;if("x"===this.lockAxis||"x"===e?i=this._pickupPositionOnPage.y:"y"!==this.lockAxis&&"y"!==e||(n=this._pickupPositionOnPage.x),this._boundaryRect){const{x:t,y:e}=this._pickupPositionInElement,s=this._boundaryRect,r=this._previewRect,o=s.top+e,a=s.bottom-(r.height-e);n=uu(n,s.left+t,s.right-(r.width-t)),i=uu(i,o,a)}return{x:n,y:i}}_updatePointerDirectionDelta(t){const{x:e,y:n}=t,i=this._pointerDirectionDelta,s=this._pointerPositionAtLastDirectionChange,r=Math.abs(e-s.x),o=Math.abs(n-s.y);return r>this._config.pointerDirectionChangeThreshold&&(i.x=e>s.x?1:-1,s.x=e),o>this._config.pointerDirectionChangeThreshold&&(i.y=n>s.y?1:-1,s.y=n),i}_toggleNativeDragInteractions(){if(!this._rootElement||!this._handles)return;const t=this._handles.length>0||!this.isDragging();t!==this._nativeInteractionsEnabled&&(this._nativeInteractionsEnabled=t,Jh(this._rootElement,t))}_removeRootElementListeners(t){t.removeEventListener("mousedown",this._pointerDown,au),t.removeEventListener("touchstart",this._pointerDown,ou)}_applyRootElementTransform(t,e){const n=cu(t,e);null==this._initialTransform&&(this._initialTransform=this._rootElement.style.transform||""),this._rootElement.style.transform=this._initialTransform?n+" "+this._initialTransform:n}_getDragDistance(t){const e=this._pickupPositionOnPage;return e?{x:t.x-e.x,y:t.y-e.y}:{x:0,y:0}}_cleanupCachedDimensions(){this._boundaryRect=this._previewRect=void 0,this._parentPositions.clear()}_containInsideBoundaryOnResize(){let{x:t,y:e}=this._passiveTransform;if(0===t&&0===e||this.isDragging()||!this._boundaryElement)return;const n=this._boundaryElement.getBoundingClientRect(),i=this._rootElement.getBoundingClientRect();if(0===n.width&&0===n.height||0===i.width&&0===i.height)return;const s=n.left-i.left,r=i.right-n.right,o=n.top-i.top,a=i.bottom-n.bottom;n.width>i.width?(s>0&&(t+=s),r>0&&(t-=r)):t=0,n.height>i.height?(o>0&&(e+=o),a>0&&(e-=a)):e=0,t===this._passiveTransform.x&&e===this._passiveTransform.y||this.setFreeDragPosition({y:e,x:t})}_getDragStartDelay(t){const e=this.dragStartDelay;return"number"==typeof e?e:pu(t)?e.touch:e?e.mouse:0}_updateOnScroll(t){const e=this._parentPositions.handleScroll(t);if(e){const n=t.target;this._boundaryRect&&(n===this._document||n!==this._boundaryElement&&n.contains(this._boundaryElement))&&iu(this._boundaryRect,e.top,e.left),this._pickupPositionOnPage.x+=e.left,this._pickupPositionOnPage.y+=e.top,this._dropContainer||(this._activeTransform.x-=e.left,this._activeTransform.y-=e.top,this._applyRootElementTransform(this._activeTransform.x,this._activeTransform.y))}}_getViewportScrollPosition(){const t=this._parentPositions.positions.get(this._document);return t?t.scrollPosition:this._viewportRuler.getViewportScrollPosition()}}function cu(t,e){return`translate3d(${Math.round(t)}px, ${Math.round(e)}px, 0)`}function hu(t){const e=t.cloneNode(!0),n=e.querySelectorAll("[id]"),i=t.querySelectorAll("canvas");e.removeAttribute("id");for(let s=0;si.appendChild(t)),i}function mu(t,e){t.style.width=e.width+"px",t.style.height=e.height+"px",t.style.transform=cu(e.left,e.top)}function gu(t,e,n){const i=_u(e,t.length-1),s=_u(n,t.length-1);if(i===s)return;const r=t[i],o=s!0,this.beforeStarted=new E,this.entered=new E,this.exited=new E,this.dropped=new E,this.sorted=new E,this._isDragging=!1,this._itemPositions=[],this._previousSwap={drag:null,delta:0,overlaps:!1},this._siblings=[],this._orientation="vertical",this._activeSiblings=new Set,this._direction="ltr",this._viewportScrollSubscription=u.EMPTY,this._verticalScrollDirection=0,this._horizontalScrollDirection=0,this._stopScrollTimers=new E,this._cachedShadowRoot=null,this._startScrollInterval=()=>{this._stopScrolling(),function(t=0,e=hh){return(!ph(t)||t<0)&&(t=0),e&&"function"==typeof e.schedule||(e=hh),new y(n=>(n.add(e.schedule(zh,t,{subscriber:n,counter:0,period:t})),n))}(0,ch).pipe(bh(this._stopScrollTimers)).subscribe(()=>{const t=this._scrollNode;1===this._verticalScrollDirection?vu(t,-2):2===this._verticalScrollDirection&&vu(t,2),1===this._horizontalScrollDirection?wu(t,-2):2===this._horizontalScrollDirection&&wu(t,2)})},this.element=th(t),this._document=n,this.withScrollableParents([this.element]),e.registerDropContainer(this),this._parentPositions=new ru(n,s)}dispose(){this._stopScrolling(),this._stopScrollTimers.complete(),this._viewportScrollSubscription.unsubscribe(),this.beforeStarted.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this.sorted.complete(),this._activeSiblings.clear(),this._scrollNode=null,this._parentPositions.clear(),this._dragDropRegistry.removeDropContainer(this)}isDragging(){return this._isDragging}start(){const t=th(this.element).style;this.beforeStarted.next(),this._isDragging=!0,this._initialScrollSnap=t.msScrollSnapType||t.scrollSnapType||"",t.scrollSnapType=t.msScrollSnapType="none",this._cacheItems(),this._siblings.forEach(t=>t._startReceiving(this)),this._viewportScrollSubscription.unsubscribe(),this._listenToScrollEvents()}enter(t,e,n,i){let s;this.start(),null==i?(s=this.sortingDisabled?this._draggables.indexOf(t):-1,-1===s&&(s=this._getItemIndexFromPointerPosition(t,e,n))):s=i;const r=this._activeDraggables,o=r.indexOf(t),a=t.getPlaceholderElement();let l=r[s];if(l===t&&(l=r[s+1]),o>-1&&r.splice(o,1),l&&!this._dragDropRegistry.isDragging(l)){const e=l.getRootElement();e.parentElement.insertBefore(a,e),r.splice(s,0,t)}else if(this._shouldEnterAsFirstChild(e,n)){const e=r[0].getRootElement();e.parentNode.insertBefore(a,e),r.unshift(t)}else th(this.element).appendChild(a),r.push(t);a.style.transform="",this._cacheItemPositions(),this._cacheParentPositions(),this.entered.next({item:t,container:this,currentIndex:this.getItemIndex(t)})}exit(t){this._reset(),this.exited.next({item:t,container:this})}drop(t,e,n,i,s,r){this._reset(),null==r&&(r=n.getItemIndex(t)),this.dropped.next({item:t,currentIndex:e,previousIndex:r,container:this,previousContainer:n,isPointerOverContainer:i,distance:s})}withItems(t){const e=this._draggables;return this._draggables=t,t.forEach(t=>t._withDropContainer(this)),this.isDragging()&&(e.filter(t=>t.isDragging()).every(e=>-1===t.indexOf(e))?this._reset():this._cacheItems()),this}withDirection(t){return this._direction=t,this}connectedTo(t){return this._siblings=t.slice(),this}withOrientation(t){return this._orientation=t,this}withScrollableParents(t){const e=th(this.element);return this._scrollableElements=-1===t.indexOf(e)?[e,...t]:t.slice(),this}getScrollableParents(){return this._scrollableElements}getItemIndex(t){return this._isDragging?bu("horizontal"===this._orientation&&"rtl"===this._direction?this._itemPositions.slice().reverse():this._itemPositions,e=>e.drag===t):this._draggables.indexOf(t)}isReceiving(){return this._activeSiblings.size>0}_sortItem(t,e,n,i){if(this.sortingDisabled||!su(this._clientRect,.05,e,n))return;const s=this._itemPositions,r=this._getItemIndexFromPointerPosition(t,e,n,i);if(-1===r&&s.length>0)return;const o="horizontal"===this._orientation,a=bu(s,e=>e.drag===t),l=s[r],c=l.clientRect,h=a>r?1:-1,u=this._getItemOffsetPx(s[a].clientRect,c,h),d=this._getSiblingOffsetPx(a,s,h),p=s.slice();gu(s,a,r),this.sorted.next({previousIndex:a,currentIndex:r,container:this,item:t}),s.forEach((e,n)=>{if(p[n]===e)return;const i=e.drag===t,s=i?u:d,r=i?t.getPlaceholderElement():e.drag.getRootElement();e.offset+=s,o?(r.style.transform=`translate3d(${Math.round(e.offset)}px, 0, 0)`,iu(e.clientRect,0,s)):(r.style.transform=`translate3d(0, ${Math.round(e.offset)}px, 0)`,iu(e.clientRect,s,0))}),this._previousSwap.overlaps=nu(c,e,n),this._previousSwap.drag=l.drag,this._previousSwap.delta=o?i.x:i.y}_startScrollingIfNecessary(t,e){if(this.autoScrollDisabled)return;let n,i=0,s=0;if(this._parentPositions.positions.forEach((r,o)=>{o!==this._document&&r.clientRect&&!n&&su(r.clientRect,.05,t,e)&&([i,s]=function(t,e,n,i){const s=Cu(e,i),r=Eu(e,n);let o=0,a=0;if(s){const e=t.scrollTop;1===s?e>0&&(o=1):t.scrollHeight-e>t.clientHeight&&(o=2)}if(r){const e=t.scrollLeft;1===r?e>0&&(a=1):t.scrollWidth-e>t.clientWidth&&(a=2)}return[o,a]}(o,r.clientRect,t,e),(i||s)&&(n=o))}),!i&&!s){const{width:r,height:o}=this._viewportRuler.getViewportSize(),a={width:r,height:o,top:0,right:r,bottom:o,left:0};i=Cu(a,e),s=Eu(a,t),n=window}!n||i===this._verticalScrollDirection&&s===this._horizontalScrollDirection&&n===this._scrollNode||(this._verticalScrollDirection=i,this._horizontalScrollDirection=s,this._scrollNode=n,(i||s)&&n?this._ngZone.runOutsideAngular(this._startScrollInterval):this._stopScrolling())}_stopScrolling(){this._stopScrollTimers.next()}_cacheParentPositions(){const t=th(this.element);this._parentPositions.cache(this._scrollableElements),this._clientRect=this._parentPositions.positions.get(t).clientRect}_cacheItemPositions(){const t="horizontal"===this._orientation;this._itemPositions=this._activeDraggables.map(t=>{const e=t.getVisibleElement();return{drag:t,offset:0,clientRect:eu(e)}}).sort((e,n)=>t?e.clientRect.left-n.clientRect.left:e.clientRect.top-n.clientRect.top)}_reset(){this._isDragging=!1;const t=th(this.element).style;t.scrollSnapType=t.msScrollSnapType=this._initialScrollSnap,this._activeDraggables.forEach(t=>{const e=t.getRootElement();e&&(e.style.transform="")}),this._siblings.forEach(t=>t._stopReceiving(this)),this._activeDraggables=[],this._itemPositions=[],this._previousSwap.drag=null,this._previousSwap.delta=0,this._previousSwap.overlaps=!1,this._stopScrolling(),this._viewportScrollSubscription.unsubscribe(),this._parentPositions.clear()}_getSiblingOffsetPx(t,e,n){const i="horizontal"===this._orientation,s=e[t].clientRect,r=e[t+-1*n];let o=s[i?"width":"height"]*n;if(r){const t=i?"left":"top",e=i?"right":"bottom";-1===n?o-=r.clientRect[t]-s[e]:o+=s[t]-r.clientRect[e]}return o}_getItemOffsetPx(t,e,n){const i="horizontal"===this._orientation;let s=i?e.left-t.left:e.top-t.top;return-1===n&&(s+=i?e.width-t.width:e.height-t.height),s}_shouldEnterAsFirstChild(t,e){if(!this._activeDraggables.length)return!1;const n=this._itemPositions,i="horizontal"===this._orientation;if(n[0].drag!==this._activeDraggables[0]){const s=n[n.length-1].clientRect;return i?t>=s.right:e>=s.bottom}{const s=n[0].clientRect;return i?t<=s.left:e<=s.top}}_getItemIndexFromPointerPosition(t,e,n,i){const s="horizontal"===this._orientation;return bu(this._itemPositions,({drag:r,clientRect:o},a,l)=>{if(r===t)return l.length<2;if(i){const t=s?i.x:i.y;if(r===this._previousSwap.drag&&this._previousSwap.overlaps&&t===this._previousSwap.delta)return!1}return s?e>=Math.floor(o.left)&&e=Math.floor(o.top)&&ni._canReceive(t,e,n))}_canReceive(t,e,n){if(!nu(this._clientRect,e,n)||!this.enterPredicate(t,this))return!1;const i=this._getShadowRoot().elementFromPoint(e,n);if(!i)return!1;const s=th(this.element);return i===s||s.contains(i)}_startReceiving(t){const e=this._activeSiblings;e.has(t)||(e.add(t),this._cacheParentPositions(),this._listenToScrollEvents())}_stopReceiving(t){this._activeSiblings.delete(t),this._viewportScrollSubscription.unsubscribe()}_listenToScrollEvents(){this._viewportScrollSubscription=this._dragDropRegistry.scroll.subscribe(t=>{if(this.isDragging()){const e=this._parentPositions.handleScroll(t);e&&(this._itemPositions.forEach(({clientRect:t})=>{iu(t,e.top,e.left)}),this._itemPositions.forEach(({drag:t})=>{this._dragDropRegistry.isDragging(t)&&t._sortFromLastPointerPosition()}))}else this.isReceiving()&&this._cacheParentPositions()})}_getShadowRoot(){if(!this._cachedShadowRoot){const t=function(t){if(function(){if(null==Nh){const t="undefined"!=typeof document?document.head:null;Nh=!(!t||!t.createShadowRoot&&!t.attachShadow)}return Nh}()){const e=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}(th(this.element));this._cachedShadowRoot=t||this._document}return this._cachedShadowRoot}}function bu(t,e){for(let n=0;n=n-r&&e<=n+r?1:e>=i-r&&e<=i+r?2:0}function Eu(t,e){const{left:n,right:i,width:s}=t,r=.05*s;return e>=n-r&&e<=n+r?1:e>=i-r&&e<=i+r?2:0}const Su=Fh({passive:!1,capture:!0});let xu=(()=>{class t{constructor(t,e){this._ngZone=t,this._dropInstances=new Set,this._dragInstances=new Set,this._activeDragInstances=new Set,this._globalListeners=new Map,this.pointerMove=new E,this.pointerUp=new E,this.scroll=new E,this._preventDefaultWhileDragging=t=>{this._activeDragInstances.size&&t.preventDefault()},this._document=e}registerDropContainer(t){this._dropInstances.has(t)||this._dropInstances.add(t)}registerDragItem(t){this._dragInstances.add(t),1===this._dragInstances.size&&this._ngZone.runOutsideAngular(()=>{this._document.addEventListener("touchmove",this._preventDefaultWhileDragging,Su)})}removeDropContainer(t){this._dropInstances.delete(t)}removeDragItem(t){this._dragInstances.delete(t),this.stopDragging(t),0===this._dragInstances.size&&this._document.removeEventListener("touchmove",this._preventDefaultWhileDragging,Su)}startDragging(t,e){if(!this._activeDragInstances.has(t)&&(this._activeDragInstances.add(t),1===this._activeDragInstances.size)){const t=e.type.startsWith("touch"),n=t?"touchend":"mouseup";this._globalListeners.set(t?"touchmove":"mousemove",{handler:t=>this.pointerMove.next(t),options:Su}).set(n,{handler:t=>this.pointerUp.next(t),options:!0}).set("scroll",{handler:t=>this.scroll.next(t),options:!0}).set("selectstart",{handler:this._preventDefaultWhileDragging,options:Su}),this._ngZone.runOutsideAngular(()=>{this._globalListeners.forEach((t,e)=>{this._document.addEventListener(e,t.handler,t.options)})})}}stopDragging(t){this._activeDragInstances.delete(t),0===this._activeDragInstances.size&&this._clearGlobalListeners()}isDragging(t){return this._activeDragInstances.has(t)}ngOnDestroy(){this._dragInstances.forEach(t=>this.removeDragItem(t)),this._dropInstances.forEach(t=>this.removeDropContainer(t)),this._clearGlobalListeners(),this.pointerMove.complete(),this.pointerUp.complete()}_clearGlobalListeners(){this._globalListeners.forEach((t,e)=>{this._document.removeEventListener(e,t.handler,t.options)}),this._globalListeners.clear()}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(ac))},t.\u0275prov=ct({factory:function(){return new t(Wt(Vl),Wt(ac))},token:t,providedIn:"root"}),t})();const ku={dragStartThreshold:5,pointerDirectionChangeThreshold:5};let Tu=(()=>{class t{constructor(t,e,n,i){this._document=t,this._ngZone=e,this._viewportRuler=n,this._dragDropRegistry=i}createDrag(t,e=ku){return new lu(t,e,this._document,this._ngZone,this._viewportRuler,this._dragDropRegistry)}createDropList(t){return new yu(t,this._dragDropRegistry,this._document,this._ngZone,this._viewportRuler)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac),Wt(Vl),Wt(Bh),Wt(xu))},t.\u0275prov=ct({factory:function(){return new t(Wt(ac),Wt(Vl),Wt(Bh),Wt(xu))},token:t,providedIn:"root"}),t})();const Iu=new Mt("CdkDropListGroup");let Du=(()=>{class t{constructor(){this._items=new Set,this._disabled=!1}get disabled(){return this._disabled}set disabled(t){this._disabled=Jc(t)}ngOnDestroy(){this._items.clear()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["","cdkDropListGroup",""]],inputs:{disabled:["cdkDropListGroupDisabled","disabled"]},exportAs:["cdkDropListGroup"],features:[ta([{provide:Iu,useExisting:t}])]}),t})();const Au=new Mt("CDK_DRAG_CONFIG");let Pu=0;const Ou=new Mt("CdkDropList");let Ru=(()=>{class t{constructor(e,n,i,s,r,o,a){this.element=e,this._changeDetectorRef=i,this._dir=s,this._group=r,this._scrollDispatcher=o,this._destroyed=new E,this.connectedTo=[],this.id="cdk-drop-list-"+Pu++,this.enterPredicate=()=>!0,this.dropped=new Za,this.entered=new Za,this.exited=new Za,this.sorted=new Za,this._unsortedItems=new Set,this._dropListRef=n.createDropList(e),this._dropListRef.data=this,a&&this._assignDefaults(a),this._dropListRef.enterPredicate=(t,e)=>this.enterPredicate(t.data,e.data),this._setupInputSyncSubscription(this._dropListRef),this._handleEvents(this._dropListRef),t._dropLists.push(this),r&&r._items.add(this)}get disabled(){return this._disabled||!!this._group&&this._group.disabled}set disabled(t){this._dropListRef.disabled=this._disabled=Jc(t)}addItem(t){this._unsortedItems.add(t),this._dropListRef.isDragging()&&this._syncItemsWithRef()}removeItem(t){this._unsortedItems.delete(t),this._dropListRef.isDragging()&&this._syncItemsWithRef()}getSortedItems(){return Array.from(this._unsortedItems).sort((t,e)=>t._dragRef.getVisibleElement().compareDocumentPosition(e._dragRef.getVisibleElement())&Node.DOCUMENT_POSITION_FOLLOWING?-1:1)}ngOnDestroy(){const e=t._dropLists.indexOf(this);e>-1&&t._dropLists.splice(e,1),this._group&&this._group._items.delete(this),this._unsortedItems.clear(),this._dropListRef.dispose(),this._destroyed.next(),this._destroyed.complete()}_setupInputSyncSubscription(e){this._dir&&this._dir.change.pipe(Eh(this._dir.value),bh(this._destroyed)).subscribe(t=>e.withDirection(t)),e.beforeStarted.subscribe(()=>{const n=(i=this.connectedTo,Array.isArray(i)?i:[i]).map(e=>"string"==typeof e?t._dropLists.find(t=>t.id===e):e);var i;if(this._group&&this._group._items.forEach(t=>{-1===n.indexOf(t)&&n.push(t)}),!this._scrollableParentsResolved&&this._scrollDispatcher){const t=this._scrollDispatcher.getAncestorScrollContainers(this.element).map(t=>t.getElementRef().nativeElement);this._dropListRef.withScrollableParents(t),this._scrollableParentsResolved=!0}e.disabled=this.disabled,e.lockAxis=this.lockAxis,e.sortingDisabled=Jc(this.sortingDisabled),e.autoScrollDisabled=Jc(this.autoScrollDisabled),e.connectedTo(n.filter(t=>t&&t!==this).map(t=>t._dropListRef)).withOrientation(this.orientation)})}_handleEvents(t){t.beforeStarted.subscribe(()=>{this._syncItemsWithRef(),this._changeDetectorRef.markForCheck()}),t.entered.subscribe(t=>{this.entered.emit({container:this,item:t.item.data,currentIndex:t.currentIndex})}),t.exited.subscribe(t=>{this.exited.emit({container:this,item:t.item.data}),this._changeDetectorRef.markForCheck()}),t.sorted.subscribe(t=>{this.sorted.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,container:this,item:t.item.data})}),t.dropped.subscribe(t=>{this.dropped.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,previousContainer:t.previousContainer.data,container:t.container.data,item:t.item.data,isPointerOverContainer:t.isPointerOverContainer,distance:t.distance}),this._changeDetectorRef.markForCheck()})}_assignDefaults(t){const{lockAxis:e,draggingDisabled:n,sortingDisabled:i,listAutoScrollDisabled:s,listOrientation:r}=t;this.disabled=null!=n&&n,this.sortingDisabled=null!=i&&i,this.autoScrollDisabled=null!=s&&s,this.orientation=r||"vertical",e&&(this.lockAxis=e)}_syncItemsWithRef(){this._dropListRef.withItems(this.getSortedItems().map(t=>t._dragRef))}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Tu),lo(Vr),lo(Mh,8),lo(Iu,12),lo(jh),lo(Au,8))},t.\u0275dir=_e({type:t,selectors:[["","cdkDropList",""],["cdk-drop-list"]],hostAttrs:[1,"cdk-drop-list"],hostVars:7,hostBindings:function(t,e){2&t&&(Bo("id",e.id),Ao("cdk-drop-list-disabled",e.disabled)("cdk-drop-list-dragging",e._dropListRef.isDragging())("cdk-drop-list-receiving",e._dropListRef.isReceiving()))},inputs:{connectedTo:["cdkDropListConnectedTo","connectedTo"],id:"id",enterPredicate:["cdkDropListEnterPredicate","enterPredicate"],disabled:["cdkDropListDisabled","disabled"],sortingDisabled:["cdkDropListSortingDisabled","sortingDisabled"],autoScrollDisabled:["cdkDropListAutoScrollDisabled","autoScrollDisabled"],orientation:["cdkDropListOrientation","orientation"],lockAxis:["cdkDropListLockAxis","lockAxis"],data:["cdkDropListData","data"]},outputs:{dropped:"cdkDropListDropped",entered:"cdkDropListEntered",exited:"cdkDropListExited",sorted:"cdkDropListSorted"},exportAs:["cdkDropList"],features:[ta([{provide:Iu,useValue:void 0},{provide:Ou,useExisting:t}])]}),t._dropLists=[],t})();const Nu=new Mt("CDK_DRAG_PARENT"),Fu=new Mt("CdkDragHandle"),Vu=new Mt("CdkDragPlaceholder"),Mu=new Mt("CdkDragPreview");let Lu=(()=>{class t{constructor(t,e,n,i,s,r,o,a,l,c){this.element=t,this.dropContainer=e,this._document=n,this._ngZone=i,this._viewContainerRef=s,this._dir=o,this._changeDetectorRef=l,this._selfHandle=c,this._destroyed=new E,this.started=new Za,this.released=new Za,this.ended=new Za,this.entered=new Za,this.exited=new Za,this.dropped=new Za,this.moved=new y(t=>{const e=this._dragRef.moved.pipe(F(t=>({source:this,pointerPosition:t.pointerPosition,event:t.event,delta:t.delta,distance:t.distance}))).subscribe(t);return()=>{e.unsubscribe()}}),this._dragRef=a.createDrag(t,{dragStartThreshold:r&&null!=r.dragStartThreshold?r.dragStartThreshold:5,pointerDirectionChangeThreshold:r&&null!=r.pointerDirectionChangeThreshold?r.pointerDirectionChangeThreshold:5,zIndex:null==r?void 0:r.zIndex}),this._dragRef.data=this,r&&this._assignDefaults(r),e&&(this._dragRef._withDropContainer(e._dropListRef),e.addItem(this)),this._syncInputs(this._dragRef),this._handleEvents(this._dragRef)}get disabled(){return this._disabled||this.dropContainer&&this.dropContainer.disabled}set disabled(t){this._disabled=Jc(t),this._dragRef.disabled=this._disabled}getPlaceholderElement(){return this._dragRef.getPlaceholderElement()}getRootElement(){return this._dragRef.getRootElement()}reset(){this._dragRef.reset()}getFreeDragPosition(){return this._dragRef.getFreeDragPosition()}ngAfterViewInit(){this._ngZone.onStable.asObservable().pipe($h(1),bh(this._destroyed)).subscribe(()=>{this._updateRootElement(),this._handles.changes.pipe(Eh(this._handles),Zh(t=>{const e=t.filter(t=>t._parentDrag===this).map(t=>t.element);this._selfHandle&&this.rootElementSelector&&e.push(this.element),this._dragRef.withHandles(e)}),function t(e,n){return"function"==typeof n?i=>i.pipe(t((t,i)=>j(e(t,i)).pipe(F((e,s)=>n(t,e,i,s))))):t=>t.lift(new Sh(e))}(t=>U(...t.map(t=>t._stateChanges.pipe(Eh(t))))),bh(this._destroyed)).subscribe(t=>{const e=this._dragRef,n=t.element.nativeElement;t.disabled?e.disableHandle(n):e.enableHandle(n)}),this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)})}ngOnChanges(t){const e=t.rootElementSelector,n=t.freeDragPosition;e&&!e.firstChange&&this._updateRootElement(),n&&!n.firstChange&&this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)}ngOnDestroy(){this.dropContainer&&this.dropContainer.removeItem(this),this._destroyed.next(),this._destroyed.complete(),this._dragRef.dispose()}_updateRootElement(){const t=this.element.nativeElement,e=this.rootElementSelector?ju(t,this.rootElementSelector):t;if(e&&e.nodeType!==this._document.ELEMENT_NODE)throw Error(`cdkDrag must be attached to an element node. Currently attached to "${e.nodeName}".`);this._dragRef.withRootElement(e||t)}_getBoundaryElement(){const t=this.boundaryElement;if(!t)return null;if("string"==typeof t)return ju(this.element.nativeElement,t);const e=th(t);if(wi()&&!e.contains(this.element.nativeElement))throw Error("Draggable element is not inside of the node passed into cdkDragBoundary.");return e}_syncInputs(t){t.beforeStarted.subscribe(()=>{if(!t.isDragging()){const e=this._dir,n=this.dragStartDelay,i=this._placeholderTemplate?{template:this._placeholderTemplate.templateRef,context:this._placeholderTemplate.data,viewContainer:this._viewContainerRef}:null,s=this._previewTemplate?{template:this._previewTemplate.templateRef,context:this._previewTemplate.data,matchSize:this._previewTemplate.matchSize,viewContainer:this._viewContainerRef}:null;t.disabled=this.disabled,t.lockAxis=this.lockAxis,t.dragStartDelay="object"==typeof n&&n?n:Xc(n),t.constrainPosition=this.constrainPosition,t.previewClass=this.previewClass,t.withBoundaryElement(this._getBoundaryElement()).withPlaceholderTemplate(i).withPreviewTemplate(s),e&&t.withDirection(e.value)}})}_handleEvents(t){t.started.subscribe(()=>{this.started.emit({source:this}),this._changeDetectorRef.markForCheck()}),t.released.subscribe(()=>{this.released.emit({source:this})}),t.ended.subscribe(t=>{this.ended.emit({source:this,distance:t.distance}),this._changeDetectorRef.markForCheck()}),t.entered.subscribe(t=>{this.entered.emit({container:t.container.data,item:this,currentIndex:t.currentIndex})}),t.exited.subscribe(t=>{this.exited.emit({container:t.container.data,item:this})}),t.dropped.subscribe(t=>{this.dropped.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,previousContainer:t.previousContainer.data,container:t.container.data,isPointerOverContainer:t.isPointerOverContainer,item:this,distance:t.distance})})}_assignDefaults(t){const{lockAxis:e,dragStartDelay:n,constrainPosition:i,previewClass:s,boundaryElement:r,draggingDisabled:o,rootElementSelector:a}=t;this.disabled=null!=o&&o,this.dragStartDelay=n||0,e&&(this.lockAxis=e),i&&(this.constrainPosition=i),s&&(this.previewClass=s),r&&(this.boundaryElement=r),a&&(this.rootElementSelector=a)}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Ou,12),lo(ac),lo(Vl),lo(Aa),lo(Au,8),lo(Mh,8),lo(Tu),lo(Vr),lo(Fu,10))},t.\u0275dir=_e({type:t,selectors:[["","cdkDrag",""]],contentQueries:function(t,e,n){var i;1&t&&(ll(n,Mu,!0),ll(n,Vu,!0),ll(n,Fu,!0)),2&t&&(rl(i=ul())&&(e._previewTemplate=i.first),rl(i=ul())&&(e._placeholderTemplate=i.first),rl(i=ul())&&(e._handles=i))},hostAttrs:[1,"cdk-drag"],hostVars:4,hostBindings:function(t,e){2&t&&Ao("cdk-drag-disabled",e.disabled)("cdk-drag-dragging",e._dragRef.isDragging())},inputs:{disabled:["cdkDragDisabled","disabled"],dragStartDelay:["cdkDragStartDelay","dragStartDelay"],lockAxis:["cdkDragLockAxis","lockAxis"],constrainPosition:["cdkDragConstrainPosition","constrainPosition"],previewClass:["cdkDragPreviewClass","previewClass"],boundaryElement:["cdkDragBoundary","boundaryElement"],rootElementSelector:["cdkDragRootElement","rootElementSelector"],data:["cdkDragData","data"],freeDragPosition:["cdkDragFreeDragPosition","freeDragPosition"]},outputs:{started:"cdkDragStarted",released:"cdkDragReleased",ended:"cdkDragEnded",entered:"cdkDragEntered",exited:"cdkDragExited",dropped:"cdkDragDropped",moved:"cdkDragMoved"},exportAs:["cdkDrag"],features:[ta([{provide:Nu,useExisting:t}]),De]}),t})();function ju(t,e){let n=t.parentElement;for(;n;){if(n.matches?n.matches(e):n.msMatchesSelector(e))return n;n=n.parentElement}return null}let Bu=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[Tu],imports:[Hh]}),t})();const Hu=Fh({passive:!0});let zu=(()=>{class t{constructor(t,e){this._platform=t,this._ngZone=e,this._monitoredElements=new Map}monitor(t){if(!this._platform.isBrowser)return kh;const e=th(t),n=this._monitoredElements.get(e);if(n)return n.subject.asObservable();const i=new E,s="cdk-text-field-autofilled",r=t=>{"cdk-text-field-autofill-start"!==t.animationName||e.classList.contains(s)?"cdk-text-field-autofill-end"===t.animationName&&e.classList.contains(s)&&(e.classList.remove(s),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!1}))):(e.classList.add(s),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{e.addEventListener("animationstart",r,Hu),e.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(e,{subject:i,unlisten:()=>{e.removeEventListener("animationstart",r,Hu)}}),i.asObservable()}stopMonitoring(t){const e=th(t),n=this._monitoredElements.get(e);n&&(n.unlisten(),n.subject.complete(),e.classList.remove("cdk-text-field-autofill-monitored"),e.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(e))}ngOnDestroy(){this._monitoredElements.forEach((t,e)=>this.stopMonitoring(e))}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dh),Wt(Vl))},t.\u0275prov=ct({factory:function(){return new t(Wt(Dh),Wt(Vl))},token:t,providedIn:"root"}),t})(),qu=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Ah]]}),t})();class $u{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new Uu(t,this.dueTime,this.scheduler))}}class Uu extends f{constructor(t,e,n){super(t),this.dueTime=e,this.scheduler=n,this.debouncedSubscription=null,this.lastValue=null,this.hasValue=!1}_next(t){this.clearDebounce(),this.lastValue=t,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(Gu,this.dueTime,this))}_complete(){this.debouncedNext(),this.destination.complete()}debouncedNext(){if(this.clearDebounce(),this.hasValue){const{lastValue:t}=this;this.lastValue=null,this.hasValue=!1,this.destination.next(t)}}clearDebounce(){const t=this.debouncedSubscription;null!==t&&(this.remove(t),t.unsubscribe(),this.debouncedSubscription=null)}}function Gu(t){t.debouncedNext()}let Wu=(()=>{class t{create(t){return"undefined"==typeof MutationObserver?null:new MutationObserver(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return new t},token:t,providedIn:"root"}),t})(),Zu=(()=>{class t{constructor(t){this._mutationObserverFactory=t,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((t,e)=>this._cleanupObserver(e))}observe(t){const e=th(t);return new y(t=>{const n=this._observeElement(e).subscribe(t);return()=>{n.unsubscribe(),this._unobserveElement(e)}})}_observeElement(t){if(this._observedElements.has(t))this._observedElements.get(t).count++;else{const e=new E,n=this._mutationObserverFactory.create(t=>e.next(t));n&&n.observe(t,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(t,{observer:n,stream:e,count:1})}return this._observedElements.get(t).stream}_unobserveElement(t){this._observedElements.has(t)&&(this._observedElements.get(t).count--,this._observedElements.get(t).count||this._cleanupObserver(t))}_cleanupObserver(t){if(this._observedElements.has(t)){const{observer:e,stream:n}=this._observedElements.get(t);e&&e.disconnect(),n.complete(),this._observedElements.delete(t)}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Wu))},t.\u0275prov=ct({factory:function(){return new t(Wt(Wu))},token:t,providedIn:"root"}),t})(),Qu=(()=>{class t{constructor(t,e,n){this._contentObserver=t,this._elementRef=e,this._ngZone=n,this.event=new Za,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(t){this._disabled=Jc(t),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(t){this._debounce=Xc(t),this._subscribe()}ngAfterContentInit(){this._currentSubscription||this.disabled||this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const t=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?t.pipe(function(t,e=hh){return n=>n.lift(new $u(t,e))}(this.debounce)):t).subscribe(this.event)})}_unsubscribe(){this._currentSubscription&&this._currentSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(lo(Zu),lo(sa),lo(Vl))},t.\u0275dir=_e({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),Ku=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[Wu]}),t})();"undefined"!=typeof Element&∈let Yu=(()=>{class t{constructor(t,e){this._platform=t,this._document=e}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const t=this._document.createElement("div");t.style.backgroundColor="rgb(1,2,3)",t.style.position="absolute",this._document.body.appendChild(t);const e=this._document.defaultView||window,n=e&&e.getComputedStyle?e.getComputedStyle(t):null,i=(n&&n.backgroundColor||"").replace(/ /g,"");switch(this._document.body.removeChild(t),i){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}_applyBodyHighContrastModeCssClasses(){if(this._platform.isBrowser&&this._document.body){const t=this._document.body.classList;t.remove("cdk-high-contrast-active"),t.remove("cdk-high-contrast-black-on-white"),t.remove("cdk-high-contrast-white-on-black");const e=this.getHighContrastMode();1===e?(t.add("cdk-high-contrast-active"),t.add("cdk-high-contrast-black-on-white")):2===e&&(t.add("cdk-high-contrast-active"),t.add("cdk-high-contrast-white-on-black"))}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dh),Wt(ac))},t.\u0275prov=ct({factory:function(){return new t(Wt(Dh),Wt(ac))},token:t,providedIn:"root"}),t})();const Ju=new ua("10.1.0");class Xu{}function td(t,e){return{type:7,name:t,definitions:e,options:{}}}function ed(t,e=null){return{type:4,styles:e,timings:t}}function nd(t,e=null){return{type:2,steps:t,options:e}}function id(t){return{type:6,styles:t,offset:null}}function sd(t,e,n){return{type:0,name:t,styles:e,options:n}}function rd(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function od(t){Promise.resolve(null).then(t)}class ad{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this.parentPlayer=null,this.totalTime=t+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){od(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){}setPosition(t){}getPosition(){return 0}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class ld{constructor(t){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;let e=0,n=0,i=0;const s=this.players.length;0==s?od(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==s&&this._onFinish()}),t.onDestroy(()=>{++n==s&&this._onDestroy()}),t.onStart(()=>{++i==s&&this._onStart()})}),this.totalTime=this.players.reduce((t,e)=>Math.max(t,e.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this.players.forEach(t=>t.init())}onStart(t){this._onStartFns.push(t)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(t=>t()),this._onStartFns=[])}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(t=>t.play())}pause(){this.players.forEach(t=>t.pause())}restart(){this.players.forEach(t=>t.restart())}finish(){this._onFinish(),this.players.forEach(t=>t.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(t=>t.destroy()),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){this.players.forEach(t=>t.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(t){const e=t*this.totalTime;this.players.forEach(t=>{const n=t.totalTime?Math.min(1,e/t.totalTime):1;t.setPosition(n)})}getPosition(){let t=0;return this.players.forEach(e=>{const n=e.getPosition();t=Math.min(n,t)}),t}beforeDestroy(){this.players.forEach(t=>{t.beforeDestroy&&t.beforeDestroy()})}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}function cd(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function hd(t){switch(t.length){case 0:return new ad;case 1:return t[0];default:return new ld(t)}}function ud(t,e,n,i,s={},r={}){const o=[],a=[];let l=-1,c=null;if(i.forEach(t=>{const n=t.offset,i=n==l,h=i&&c||{};Object.keys(t).forEach(n=>{let i=n,a=t[n];if("offset"!==n)switch(i=e.normalizePropertyName(i,o),a){case"!":a=s[n];break;case"*":a=r[n];break;default:a=e.normalizeStyleValue(n,i,a,o)}h[i]=a}),i||a.push(h),c=h,l=n}),o.length){const t="\n - ";throw new Error(`Unable to animate due to the following errors:${t}${o.join(t)}`)}return a}function dd(t,e,n,i){switch(e){case"start":t.onStart(()=>i(n&&pd(n,"start",t)));break;case"done":t.onDone(()=>i(n&&pd(n,"done",t)));break;case"destroy":t.onDestroy(()=>i(n&&pd(n,"destroy",t)))}}function pd(t,e,n){const i=n.totalTime,s=fd(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,!!n.disabled),r=t._data;return null!=r&&(s._data=r),s}function fd(t,e,n,i,s="",r=0,o){return{element:t,triggerName:e,fromState:n,toState:i,phaseName:s,totalTime:r,disabled:!!o}}function md(t,e,n){let i;return t instanceof Map?(i=t.get(e),i||t.set(e,i=n)):(i=t[e],i||(i=t[e]=n)),i}function gd(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let _d=(t,e)=>!1,yd=(t,e)=>!1,bd=(t,e,n)=>[];const vd=cd();(vd||"undefined"!=typeof Element)&&(_d=(t,e)=>t.contains(e),yd=(()=>{if(vd||Element.prototype.matches)return(t,e)=>t.matches(e);{const t=Element.prototype,e=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;return e?(t,n)=>e.apply(t,[n]):yd}})(),bd=(t,e,n)=>{let i=[];if(n)i.push(...t.querySelectorAll(e));else{const n=t.querySelector(e);n&&i.push(n)}return i});let wd=null,Cd=!1;function Ed(t){wd||(wd=("undefined"!=typeof document?document.body:null)||{},Cd=!!wd.style&&"WebkitAppearance"in wd.style);let e=!0;return wd.style&&!function(t){return"ebkit"==t.substring(1,6)}(t)&&(e=t in wd.style,!e&&Cd)&&(e="Webkit"+t.charAt(0).toUpperCase()+t.substr(1)in wd.style),e}const Sd=yd,xd=_d,kd=bd;function Td(t){const e={};return Object.keys(t).forEach(n=>{const i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}let Id=(()=>{class t{validateStyleProperty(t){return Ed(t)}matchesElement(t,e){return Sd(t,e)}containsElement(t,e){return xd(t,e)}query(t,e,n){return kd(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,i,s,r=[],o){return new ad(n,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Dd=(()=>{class t{}return t.NOOP=new Id,t})();function Ad(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Pd(parseFloat(e[1]),e[2])}function Pd(t,e){switch(e){case"s":return 1e3*t;default:return t}}function Od(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let i,s=0,r="";if("string"==typeof t){const n=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===n)return e.push(`The provided timing value "${t}" is invalid.`),{duration:0,delay:0,easing:""};i=Pd(parseFloat(n[1]),n[2]);const o=n[3];null!=o&&(s=Pd(parseFloat(o),n[4]));const a=n[5];a&&(r=a)}else i=t;if(!n){let n=!1,r=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),s<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(r,0,`The provided timing value "${t}" is invalid.`)}return{duration:i,delay:s,easing:r}}(t,e,n)}function Rd(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Nd(t,e,n={}){if(e)for(let i in t)n[i]=t[i];else Rd(t,n);return n}function Fd(t,e,n){return n?e+":"+n+";":""}function Vd(t){let e="";for(let n=0;n{const s=Ud(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[s]),t.style[s]=e[i]}),cd()&&Vd(t))}function Ld(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=Ud(e);t.style[n]=""}),cd()&&Vd(t))}function jd(t){return Array.isArray(t)?1==t.length?t[0]:nd(t):t}const Bd=new RegExp("{{\\s*(.+?)\\s*}}","g");function Hd(t){let e=[];if("string"==typeof t){let n;for(;n=Bd.exec(t);)e.push(n[1]);Bd.lastIndex=0}return e}function zd(t,e,n){const i=t.toString(),s=i.replace(Bd,(t,i)=>{let s=e[i];return e.hasOwnProperty(i)||(n.push("Please provide a value for the animation param "+i),s=""),s.toString()});return s==i?t:s}function qd(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const $d=/-+([a-z0-9])/g;function Ud(t){return t.replace($d,(...t)=>t[1].toUpperCase())}function Gd(t,e){return 0===t||0===e}function Wd(t,e,n){const i=Object.keys(n);if(i.length&&e.length){let r=e[0],o=[];if(i.forEach(t=>{r.hasOwnProperty(t)||o.push(t),r[t]=n[t]}),o.length)for(var s=1;sfunction(t,e,n){if(":"==t[0]){const i=function(t,e){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(t,e)=>parseFloat(e)>parseFloat(t);case":decrement":return(t,e)=>parseFloat(e) *"}}(t,n);if("function"==typeof i)return void e.push(i);t=i}const i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==i||i.length<4)return n.push(`The provided transition expression "${t}" is not supported`),e;const s=i[1],r=i[2],o=i[3];e.push(Xd(s,o)),"<"!=r[0]||"*"==s&&"*"==o||e.push(Xd(o,s))}(t,n,e)):n.push(t),n}const Yd=new Set(["true","1"]),Jd=new Set(["false","0"]);function Xd(t,e){const n=Yd.has(t)||Jd.has(t),i=Yd.has(e)||Jd.has(e);return(s,r)=>{let o="*"==t||t==s,a="*"==e||e==r;return!o&&n&&"boolean"==typeof s&&(o=s?Yd.has(t):Jd.has(t)),!a&&i&&"boolean"==typeof r&&(a=r?Yd.has(e):Jd.has(e)),o&&a}}const tp=new RegExp("s*:selfs*,?","g");function ep(t,e,n){return new np(t).build(e,n)}class np{constructor(t){this._driver=t}build(t,e){const n=new ip(e);return this._resetContextStyleTimingState(n),Zd(this,jd(t),n)}_resetContextStyleTimingState(t){t.currentQuerySelector="",t.collectedStyles={},t.collectedStyles[""]={},t.currentTime=0}visitTrigger(t,e){let n=e.queryCount=0,i=e.depCount=0;const s=[],r=[];return"@"==t.name.charAt(0)&&e.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),t.definitions.forEach(t=>{if(this._resetContextStyleTimingState(e),0==t.type){const n=t,i=n.name;i.toString().split(/\s*,\s*/).forEach(t=>{n.name=t,s.push(this.visitState(n,e))}),n.name=i}else if(1==t.type){const s=this.visitTransition(t,e);n+=s.queryCount,i+=s.depCount,r.push(s)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:s,transitions:r,queryCount:n,depCount:i,options:null}}visitState(t,e){const n=this.visitStyle(t.styles,e),i=t.options&&t.options.params||null;if(n.containsDynamicStyles){const s=new Set,r=i||{};if(n.styles.forEach(t=>{if(sp(t)){const e=t;Object.keys(e).forEach(t=>{Hd(e[t]).forEach(t=>{r.hasOwnProperty(t)||s.add(t)})})}}),s.size){const n=qd(s.values());e.errors.push(`state("${t.name}", ...) must define default values for all the following style substitutions: ${n.join(", ")}`)}}return{type:0,name:t.name,style:n,options:i?{params:i}:null}}visitTransition(t,e){e.queryCount=0,e.depCount=0;const n=Zd(this,jd(t.animation),e);return{type:1,matchers:Kd(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:rp(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>Zd(this,t,e)),options:rp(t.options)}}visitGroup(t,e){const n=e.currentTime;let i=0;const s=t.steps.map(t=>{e.currentTime=n;const s=Zd(this,t,e);return i=Math.max(i,e.currentTime),s});return e.currentTime=i,{type:3,steps:s,options:rp(t.options)}}visitAnimate(t,e){const n=function(t,e){let n=null;if(t.hasOwnProperty("duration"))n=t;else if("number"==typeof t)return op(Od(t,e).duration,0,"");const i=t;if(i.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=op(0,0,"");return t.dynamic=!0,t.strValue=i,t}return n=n||Od(i,e),op(n.duration,n.delay,n.easing)}(t.timings,e.errors);let i;e.currentAnimateTimings=n;let s=t.styles?t.styles:id({});if(5==s.type)i=this.visitKeyframes(s,e);else{let s=t.styles,r=!1;if(!s){r=!0;const t={};n.easing&&(t.easing=n.easing),s=id(t)}e.currentTime+=n.duration+n.delay;const o=this.visitStyle(s,e);o.isEmptyStep=r,i=o}return e.currentAnimateTimings=null,{type:4,timings:n,style:i,options:null}}visitStyle(t,e){const n=this._makeStyleAst(t,e);return this._validateStyleAst(n,e),n}_makeStyleAst(t,e){const n=[];Array.isArray(t.styles)?t.styles.forEach(t=>{"string"==typeof t?"*"==t?n.push(t):e.errors.push(`The provided style string value ${t} is not allowed.`):n.push(t)}):n.push(t.styles);let i=!1,s=null;return n.forEach(t=>{if(sp(t)){const e=t,n=e.easing;if(n&&(s=n,delete e.easing),!i)for(let t in e)if(e[t].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:s,offset:t.offset,containsDynamicStyles:i,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let i=e.currentTime,s=e.currentTime;n&&s>0&&(s-=n.duration+n.delay),t.styles.forEach(t=>{"string"!=typeof t&&Object.keys(t).forEach(n=>{if(!this._driver.validateStyleProperty(n))return void e.errors.push(`The provided animation property "${n}" is not a supported CSS property for animations`);const r=e.collectedStyles[e.currentQuerySelector],o=r[n];let a=!0;o&&(s!=i&&s>=o.startTime&&i<=o.endTime&&(e.errors.push(`The CSS property "${n}" that exists between the times of "${o.startTime}ms" and "${o.endTime}ms" is also being animated in a parallel animation between the times of "${s}ms" and "${i}ms"`),a=!1),s=o.startTime),a&&(r[n]={startTime:s,endTime:i}),e.options&&function(t,e,n){const i=e.params||{},s=Hd(t);s.length&&s.forEach(t=>{i.hasOwnProperty(t)||n.push(`Unable to resolve the local animation param ${t} in the given list of values`)})}(t[n],e.options,e.errors)})})}visitKeyframes(t,e){const n={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push("keyframes() must be placed inside of a call to animate()"),n;let i=0;const s=[];let r=!1,o=!1,a=0;const l=t.steps.map(t=>{const n=this._makeStyleAst(t,e);let l=null!=n.offset?n.offset:function(t){if("string"==typeof t)return null;let e=null;if(Array.isArray(t))t.forEach(t=>{if(sp(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(sp(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}return e}(n.styles),c=0;return null!=l&&(i++,c=n.offset=l),o=o||c<0||c>1,r=r||c0&&i{const r=h>0?i==u?1:h*i:s[i],o=r*f;e.currentTime=d+p.delay+o,p.duration=o,this._validateStyleAst(t,e),t.offset=r,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:Zd(this,jd(t.animation),e),options:rp(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:rp(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:rp(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,i=t.options||{};e.queryCount++,e.currentQuery=t;const[s,r]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(tp,"")),[t=t.replace(/@\*/g,".ng-trigger").replace(/@\w+/g,t=>".ng-trigger-"+t.substr(1)).replace(/:animating/g,".ng-animating"),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+s:s,md(e.collectedStyles,e.currentQuerySelector,{});const o=Zd(this,jd(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:s,limit:i.limit||0,optional:!!i.optional,includeSelf:r,animation:o,originalSelector:t.selector,options:rp(t.options)}}visitStagger(t,e){e.currentQuery||e.errors.push("stagger() can only be used inside of query()");const n="full"===t.timings?{duration:0,delay:0,easing:"full"}:Od(t.timings,e.errors,!0);return{type:12,animation:Zd(this,jd(t.animation),e),timings:n,options:null}}}class ip{constructor(t){this.errors=t,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null}}function sp(t){return!Array.isArray(t)&&"object"==typeof t}function rp(t){var e;return t?(t=Rd(t)).params&&(t.params=(e=t.params)?Rd(e):null):t={},t}function op(t,e,n){return{duration:t,delay:e,easing:n}}function ap(t,e,n,i,s,r,o=null,a=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:s,delay:r,totalTime:s+r,easing:o,subTimeline:a}}class lp{constructor(){this._map=new Map}consume(t){let e=this._map.get(t);return e?this._map.delete(t):e=[],e}append(t,e){let n=this._map.get(t);n||this._map.set(t,n=[]),n.push(...e)}has(t){return this._map.has(t)}clear(){this._map.clear()}}const cp=new RegExp(":enter","g"),hp=new RegExp(":leave","g");function up(t,e,n,i,s,r={},o={},a,l,c=[]){return(new dp).buildKeyframes(t,e,n,i,s,r,o,a,l,c)}class dp{buildKeyframes(t,e,n,i,s,r,o,a,l,c=[]){l=l||new lp;const h=new fp(t,e,l,i,s,c,[]);h.options=a,h.currentTimeline.setStyles([r],null,h.errors,a),Zd(this,n,h);const u=h.timelines.filter(t=>t.containsAnimation());if(u.length&&Object.keys(o).length){const t=u[u.length-1];t.allowOnlyTimelineStyles()||t.setStyles([o],null,h.errors,a)}return u.length?u.map(t=>t.buildKeyframes()):[ap(e,[],[],[],0,0,"",!1)]}visitTrigger(t,e){}visitState(t,e){}visitTransition(t,e){}visitAnimateChild(t,e){const n=e.subInstructions.consume(e.element);if(n){const i=e.createSubContext(t.options),s=e.currentTimeline.currentTime,r=this._visitSubInstructions(n,i,i.options);s!=r&&e.transformIntoNewTimeline(r)}e.previousNode=t}visitAnimateRef(t,e){const n=e.createSubContext(t.options);n.transformIntoNewTimeline(),this.visitReference(t.animation,n),e.transformIntoNewTimeline(n.currentTimeline.currentTime),e.previousNode=t}_visitSubInstructions(t,e,n){let i=e.currentTimeline.currentTime;const s=null!=n.duration?Ad(n.duration):null,r=null!=n.delay?Ad(n.delay):null;return 0!==s&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,s,r);i=Math.max(i,n.duration+n.delay)}),i}visitReference(t,e){e.updateOptions(t.options,!0),Zd(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let i=e;const s=t.options;if(s&&(s.params||s.delay)&&(i=e.createSubContext(s),i.transformIntoNewTimeline(),null!=s.delay)){6==i.previousNode.type&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=pp);const t=Ad(s.delay);i.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>Zd(this,t,i)),i.currentTimeline.applyStylesToKeyframe(),i.subContextCount>n&&i.transformIntoNewTimeline()),e.previousNode=t}visitGroup(t,e){const n=[];let i=e.currentTimeline.currentTime;const s=t.options&&t.options.delay?Ad(t.options.delay):0;t.steps.forEach(r=>{const o=e.createSubContext(t.options);s&&o.delayNextStep(s),Zd(this,r,o),i=Math.max(i,o.currentTimeline.currentTime),n.push(o.currentTimeline)}),n.forEach(t=>e.currentTimeline.mergeTimelineCollectedStyles(t)),e.transformIntoNewTimeline(i),e.previousNode=t}_visitTiming(t,e){if(t.dynamic){const n=t.strValue;return Od(e.params?zd(n,e.params,e.errors):n,e.errors)}return{duration:t.duration,delay:t.delay,easing:t.easing}}visitAnimate(t,e){const n=e.currentAnimateTimings=this._visitTiming(t.timings,e),i=e.currentTimeline;n.delay&&(e.incrementTime(n.delay),i.snapshotCurrentStyles());const s=t.style;5==s.type?this.visitKeyframes(s,e):(e.incrementTime(n.duration),this.visitStyle(s,e),i.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=t}visitStyle(t,e){const n=e.currentTimeline,i=e.currentAnimateTimings;!i&&n.getCurrentStyleProperties().length&&n.forwardFrame();const s=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(s):n.setStyles(t.styles,s,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,i=e.currentTimeline.duration,s=n.duration,r=e.createSubContext().currentTimeline;r.easing=n.easing,t.styles.forEach(t=>{r.forwardTime((t.offset||0)*s),r.setStyles(t.styles,t.easing,e.errors,e.options),r.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(r),e.transformIntoNewTimeline(i+s),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,i=t.options||{},s=i.delay?Ad(i.delay):0;s&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=pp);let r=n;const o=e.invokeQuery(t.selector,t.originalSelector,t.limit,t.includeSelf,!!i.optional,e.errors);e.currentQueryTotal=o.length;let a=null;o.forEach((n,i)=>{e.currentQueryIndex=i;const o=e.createSubContext(t.options,n);s&&o.delayNextStep(s),n===e.element&&(a=o.currentTimeline),Zd(this,t.animation,o),o.currentTimeline.applyStylesToKeyframe(),r=Math.max(r,o.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(r),a&&(e.currentTimeline.mergeTimelineCollectedStyles(a),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,i=e.currentTimeline,s=t.timings,r=Math.abs(s.duration),o=r*(e.currentQueryTotal-1);let a=r*e.currentQueryIndex;switch(s.duration<0?"reverse":s.easing){case"reverse":a=o-a;break;case"full":a=n.currentStaggerTime}const l=e.currentTimeline;a&&l.delayNextStep(a);const c=l.currentTime;Zd(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}const pp={};class fp{constructor(t,e,n,i,s,r,o,a){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=s,this.errors=r,this.timelines=o,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=pp,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=a||new mp(this._driver,e,0),o.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(t,e){if(!t)return;const n=t;let i=this.options;null!=n.duration&&(i.duration=Ad(n.duration)),null!=n.delay&&(i.delay=Ad(n.delay));const s=n.params;if(s){let t=i.params;t||(t=this.options.params={}),Object.keys(s).forEach(n=>{e&&t.hasOwnProperty(n)||(t[n]=zd(s[n],t,this.errors))})}}_copyOptions(){const t={};if(this.options){const e=this.options.params;if(e){const n=t.params={};Object.keys(e).forEach(t=>{n[t]=e[t]})}}return t}createSubContext(t=null,e,n){const i=e||this.element,s=new fp(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,n||0));return s.previousNode=this.previousNode,s.currentAnimateTimings=this.currentAnimateTimings,s.options=this._copyOptions(),s.updateOptions(t),s.currentQueryIndex=this.currentQueryIndex,s.currentQueryTotal=this.currentQueryTotal,s.parentContext=this,this.subContextCount++,s}transformIntoNewTimeline(t){return this.previousNode=pp,this.currentTimeline=this.currentTimeline.fork(this.element,t),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(t,e,n){const i={duration:null!=e?e:t.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+t.delay,easing:""},s=new gp(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(s),i}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,i,s,r){let o=[];if(i&&o.push(this.element),t.length>0){t=(t=t.replace(cp,"."+this._enterClassName)).replace(hp,"."+this._leaveClassName);let e=this._driver.query(this.element,t,1!=n);0!==n&&(e=n<0?e.slice(e.length+n,e.length):e.slice(0,n)),o.push(...e)}return s||0!=o.length||r.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),o}}class mp{constructor(t,e,n,i){this._driver=t,this.element=e,this.startTime=n,this._elementTimelineStylesLookup=i,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}getCurrentStyleProperties(){return Object.keys(this._currentKeyframe)}get currentTime(){return this.startTime+this.duration}delayNextStep(t){const e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+t),e&&this.snapshotCurrentStyles()):this.startTime+=t}fork(t,e){return this.applyStylesToKeyframe(),new mp(this._driver,t,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(t){this.applyStylesToKeyframe(),this.duration=t,this._loadKeyframe()}_updateStyle(t,e){this._localTimelineStyles[t]=e,this._globalTimelineStyles[t]=e,this._styleSummary[t]={time:this.currentTime,value:e}}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(t){t&&(this._previousKeyframe.easing=t),Object.keys(this._globalTimelineStyles).forEach(t=>{this._backFill[t]=this._globalTimelineStyles[t]||"*",this._currentKeyframe[t]="*"}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,i){e&&(this._previousKeyframe.easing=e);const s=i&&i.params||{},r=function(t,e){const n={};let i;return t.forEach(t=>{"*"===t?(i=i||Object.keys(e),i.forEach(t=>{n[t]="*"})):Nd(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(r).forEach(t=>{const e=zd(r[t],s,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:"*"),this._updateStyle(t,e)})}applyStylesToKeyframe(){const t=this._pendingStyles,e=Object.keys(t);0!=e.length&&(this._pendingStyles={},e.forEach(e=>{this._currentKeyframe[e]=t[e]}),Object.keys(this._localTimelineStyles).forEach(t=>{this._currentKeyframe.hasOwnProperty(t)||(this._currentKeyframe[t]=this._localTimelineStyles[t])}))}snapshotCurrentStyles(){Object.keys(this._localTimelineStyles).forEach(t=>{const e=this._localTimelineStyles[t];this._pendingStyles[t]=e,this._updateStyle(t,e)})}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const t=[];for(let e in this._currentKeyframe)t.push(e);return t}mergeTimelineCollectedStyles(t){Object.keys(t._styleSummary).forEach(e=>{const n=this._styleSummary[e],i=t._styleSummary[e];(!n||i.time>n.time)&&this._updateStyle(e,i.value)})}buildKeyframes(){this.applyStylesToKeyframe();const t=new Set,e=new Set,n=1===this._keyframes.size&&0===this.duration;let i=[];this._keyframes.forEach((s,r)=>{const o=Nd(s,!0);Object.keys(o).forEach(n=>{const i=o[n];"!"==i?t.add(n):"*"==i&&e.add(n)}),n||(o.offset=r/this.duration),i.push(o)});const s=t.size?qd(t.values()):[],r=e.size?qd(e.values()):[];if(n){const t=i[0],e=Rd(t);t.offset=0,e.offset=1,i=[t,e]}return ap(this.element,i,s,r,this.duration,this.startTime,this.easing,!1)}}class gp extends mp{constructor(t,e,n,i,s,r,o=!1){super(t,e,r.delay),this.element=e,this.keyframes=n,this.preStyleProps=i,this.postStyleProps=s,this._stretchStartingKeyframe=o,this.timings={duration:r.duration,delay:r.delay,easing:r.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let t=this.keyframes,{delay:e,duration:n,easing:i}=this.timings;if(this._stretchStartingKeyframe&&e){const s=[],r=n+e,o=e/r,a=Nd(t[0],!1);a.offset=0,s.push(a);const l=Nd(t[0],!1);l.offset=_p(o),s.push(l);const c=t.length-1;for(let i=1;i<=c;i++){let o=Nd(t[i],!1);o.offset=_p((e+o.offset*n)/r),s.push(o)}n=r,e=0,i="",t=s}return ap(this.element,t,this.preStyleProps,this.postStyleProps,n,e,i,!0)}}function _p(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class yp{}class bp extends yp{normalizePropertyName(t,e){return Ud(t)}normalizeStyleValue(t,e,n,i){let s="";const r=n.toString().trim();if(vp[e]&&0!==n&&"0"!==n)if("number"==typeof n)s="px";else{const e=n.match(/^[+-]?[\d\.]+([a-z]*)$/);e&&0==e[1].length&&i.push(`Please provide a CSS unit value for ${t}:${n}`)}return r+s}}const vp=(()=>function(t){const e={};return t.forEach(t=>e[t]=!0),e}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(",")))();function wp(t,e,n,i,s,r,o,a,l,c,h,u,d){return{type:0,element:t,triggerName:e,isRemovalTransition:s,fromState:n,fromStyles:r,toState:i,toStyles:o,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:h,totalTime:u,errors:d}}const Cp={};class Ep{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,i){return function(t,e,n,i,s){return t.some(t=>t(e,n,i,s))}(this.ast.matchers,t,e,n,i)}buildStyles(t,e,n){const i=this._stateStyles["*"],s=this._stateStyles[t],r=i?i.buildStyles(e,n):{};return s?s.buildStyles(e,n):r}build(t,e,n,i,s,r,o,a,l,c){const h=[],u=this.ast.options&&this.ast.options.params||Cp,d=this.buildStyles(n,o&&o.params||Cp,h),p=a&&a.params||Cp,f=this.buildStyles(i,p,h),m=new Set,g=new Map,_=new Map,y="void"===i,b={params:Object.assign(Object.assign({},u),p)},v=c?[]:up(t,e,this.ast.animation,s,r,d,f,b,l,h);let w=0;if(v.forEach(t=>{w=Math.max(t.duration+t.delay,w)}),h.length)return wp(e,this._triggerName,n,i,y,d,f,[],[],g,_,w,h);v.forEach(t=>{const n=t.element,i=md(g,n,{});t.preStyleProps.forEach(t=>i[t]=!0);const s=md(_,n,{});t.postStyleProps.forEach(t=>s[t]=!0),n!==e&&m.add(n)});const C=qd(m.values());return wp(e,this._triggerName,n,i,y,d,f,v,C,g,_,w)}}class Sp{constructor(t,e){this.styles=t,this.defaultParams=e}buildStyles(t,e){const n={},i=Rd(this.defaultParams);return Object.keys(t).forEach(e=>{const n=t[e];null!=n&&(i[e]=n)}),this.styles.styles.forEach(t=>{if("string"!=typeof t){const s=t;Object.keys(s).forEach(t=>{let r=s[t];r.length>1&&(r=zd(r,i,e)),n[t]=r})}}),n}}class xp{constructor(t,e){this.name=t,this.ast=e,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new Sp(t.style,t.options&&t.options.params||{})}),kp(this.states,"true","1"),kp(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new Ep(t,e,this.states))}),this.fallbackTransition=new Ep(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,i){return this.transitionFactories.find(s=>s.match(t,e,n,i))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function kp(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const Tp=new lp;class Ip{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._animations={},this._playersById={},this.players=[]}register(t,e){const n=[],i=ep(this._driver,e,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: "+n.join("\n"));this._animations[t]=i}_buildPlayer(t,e,n){const i=t.element,s=ud(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,s,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const i=[],s=this._animations[t];let r;const o=new Map;if(s?(r=up(this._driver,e,s,"ng-enter","ng-leave",{},{},n,Tp,i),r.forEach(t=>{const e=md(o,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(i.push("The requested animation doesn't exist or has already been destroyed"),r=[]),i.length)throw new Error("Unable to create the animation due to the following errors: "+i.join("\n"));o.forEach((t,e)=>{Object.keys(t).forEach(n=>{t[n]=this._driver.computeStyle(e,n,"*")})});const a=hd(r.map(t=>{const e=o.get(t.element);return this._buildPlayer(t,{},e)}));return this._playersById[t]=a,a.onDestroy(()=>this.destroy(t)),this.players.push(a),a}destroy(t){const e=this._getPlayer(t);e.destroy(),delete this._playersById[t];const n=this.players.indexOf(e);n>=0&&this.players.splice(n,1)}_getPlayer(t){const e=this._playersById[t];if(!e)throw new Error("Unable to find the timeline player referenced by "+t);return e}listen(t,e,n,i){const s=fd(e,"","","");return dd(this._getPlayer(t),n,s,i),()=>{}}command(t,e,n,i){if("register"==n)return void this.register(t,i[0]);if("create"==n)return void this.create(t,e,i[0]||{});const s=this._getPlayer(t);switch(n){case"play":s.play();break;case"pause":s.pause();break;case"reset":s.reset();break;case"restart":s.restart();break;case"finish":s.finish();break;case"init":s.init();break;case"setPosition":s.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}}const Dp=[],Ap={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Pp={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0};class Op{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=null!=(i=n?t.value:t)?i:null,n){const e=Rd(t);delete e.value,this.options=e}else this.options={};var i;this.options.params||(this.options.params={})}get params(){return this.options.params}absorbOptions(t){const e=t.params;if(e){const t=this.options.params;Object.keys(e).forEach(n=>{null==t[n]&&(t[n]=e[n])})}}}const Rp=new Op("void");class Np{constructor(t,e,n){this.id=t,this.hostElement=e,this._engine=n,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,Hp(e,this._hostClassName)}listen(t,e,n,i){if(!this._triggers.hasOwnProperty(e))throw new Error(`Unable to listen on the animation trigger event "${n}" because the animation trigger "${e}" doesn't exist!`);if(null==n||0==n.length)throw new Error(`Unable to listen on the animation trigger "${e}" because the provided event is undefined!`);if("start"!=(s=n)&&"done"!=s)throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);var s;const r=md(this._elementListeners,t,[]),o={name:e,phase:n,callback:i};r.push(o);const a=md(this._engine.statesByElement,t,{});return a.hasOwnProperty(e)||(Hp(t,"ng-trigger"),Hp(t,"ng-trigger-"+e),a[e]=Rp),()=>{this._engine.afterFlush(()=>{const t=r.indexOf(o);t>=0&&r.splice(t,1),this._triggers[e]||delete a[e]})}}register(t,e){return!this._triggers[t]&&(this._triggers[t]=e,!0)}_getTrigger(t){const e=this._triggers[t];if(!e)throw new Error(`The provided animation trigger "${t}" has not been registered!`);return e}trigger(t,e,n,i=!0){const s=this._getTrigger(e),r=new Vp(this.id,e,t);let o=this._engine.statesByElement.get(t);o||(Hp(t,"ng-trigger"),Hp(t,"ng-trigger-"+e),this._engine.statesByElement.set(t,o={}));let a=o[e];const l=new Op(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&a&&l.absorbOptions(a.options),o[e]=l,a||(a=Rp),"void"!==l.value&&a.value===l.value){if(!function(t,e){const n=Object.keys(t),i=Object.keys(e);if(n.length!=i.length)return!1;for(let s=0;s{Ld(t,n),Md(t,i)})}return}const c=md(this._engine.playersByElement,t,[]);c.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let h=s.matchTransition(a.value,l.value,t,l.params),u=!1;if(!h){if(!i)return;h=s.fallbackTransition,u=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:h,fromState:a,toState:l,player:r,isFallbackTransition:u}),u||(Hp(t,"ng-animate-queued"),r.onStart(()=>{zp(t,"ng-animate-queued")})),r.onDone(()=>{let e=this.players.indexOf(r);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(r);t>=0&&n.splice(t,1)}}),this.players.push(r),c.push(r),r}deregister(t){delete this._triggers[t],this._engine.statesByElement.forEach((e,n)=>{delete e[t]}),this._elementListeners.forEach((e,n)=>{this._elementListeners.set(n,e.filter(e=>e.name!=t))})}clearElementCache(t){this._engine.statesByElement.delete(t),this._elementListeners.delete(t);const e=this._engine.playersByElement.get(t);e&&(e.forEach(t=>t.destroy()),this._engine.playersByElement.delete(t))}_signalRemovalForInnerTriggers(t,e){const n=this._engine.driver.query(t,".ng-trigger",!0);n.forEach(t=>{if(t.__ng_removed)return;const n=this._engine.fetchNamespacesByElement(t);n.size?n.forEach(n=>n.triggerLeaveAnimation(t,e,!1,!0)):this.clearElementCache(t)}),this._engine.afterFlushAnimationsDone(()=>n.forEach(t=>this.clearElementCache(t)))}triggerLeaveAnimation(t,e,n,i){const s=this._engine.statesByElement.get(t);if(s){const r=[];if(Object.keys(s).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,"void",i);n&&r.push(n)}}),r.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&hd(r).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t);if(e){const n=new Set;e.forEach(e=>{const i=e.name;if(n.has(i))return;n.add(i);const s=this._triggers[i].fallbackTransition,r=this._engine.statesByElement.get(t)[i]||Rp,o=new Op("void"),a=new Vp(this.id,i,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:i,transition:s,fromState:r,toState:o,player:a,isFallbackTransition:!0})})}}removeNode(t,e){const n=this._engine;if(t.childElementCount&&this._signalRemovalForInnerTriggers(t,e),this.triggerLeaveAnimation(t,e,!0))return;let i=!1;if(n.totalAnimations){const e=n.players.length?n.playersByQueriedElement.get(t):[];if(e&&e.length)i=!0;else{let e=t;for(;e=e.parentNode;)if(n.statesByElement.get(e)){i=!0;break}}}if(this.prepareLeaveAnimationListeners(t),i)n.markElementAsRemoved(this.id,t,!1,e);else{const i=t.__ng_removed;i&&i!==Ap||(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}}insertNode(t,e){Hp(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const i=n.player;if(i.destroyed)return;const s=n.element,r=this._elementListeners.get(s);r&&r.forEach(e=>{if(e.name==n.triggerName){const i=fd(s,n.triggerName,n.fromState.value,n.toState.value);i._data=t,dd(n.player,e.phase,i,e.callback)}}),i.markedForDestroy?this._engine.afterFlush(()=>{i.destroy()}):e.push(n)}),this._queue=[],e.sort((t,e)=>{const n=t.transition.ast.depCount,i=e.transition.ast.depCount;return 0==n||0==i?n-i:this._engine.driver.containsElement(t.element,e.element)?1:-1})}destroy(t){this.players.forEach(t=>t.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,t)}elementContainsData(t){let e=!1;return this._elementListeners.has(t)&&(e=!0),e=!!this._queue.find(e=>e.element===t)||e,e}}class Fp{constructor(t,e,n){this.bodyNode=t,this.driver=e,this._normalizer=n,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(t,e)=>{}}_onRemovalComplete(t,e){this.onRemovalComplete(t,e)}get queuedPlayers(){const t=[];return this._namespaceList.forEach(e=>{e.players.forEach(e=>{e.queued&&t.push(e)})}),t}createNamespace(t,e){const n=new Np(t,e,this);return e.parentNode?this._balanceNamespaceList(n,e):(this.newHostElements.set(e,n),this.collectEnterElement(e)),this._namespaceLookup[t]=n}_balanceNamespaceList(t,e){const n=this._namespaceList.length-1;if(n>=0){let i=!1;for(let s=n;s>=0;s--)if(this.driver.containsElement(this._namespaceList[s].hostElement,e)){this._namespaceList.splice(s+1,0,t),i=!0;break}i||this._namespaceList.splice(0,0,t)}else this._namespaceList.push(t);return this.namespacesByHostElement.set(e,t),t}register(t,e){let n=this._namespaceLookup[t];return n||(n=this.createNamespace(t,e)),n}registerTrigger(t,e,n){let i=this._namespaceLookup[t];i&&i.register(e,n)&&this.totalAnimations++}destroy(t,e){if(!t)return;const n=this._fetchNamespace(t);this.afterFlush(()=>{this.namespacesByHostElement.delete(n.hostElement),delete this._namespaceLookup[t];const e=this._namespaceList.indexOf(n);e>=0&&this._namespaceList.splice(e,1)}),this.afterFlushAnimationsDone(()=>n.destroy(e))}_fetchNamespace(t){return this._namespaceLookup[t]}fetchNamespacesByElement(t){const e=new Set,n=this.statesByElement.get(t);if(n){const t=Object.keys(n);for(let i=0;i=0&&this.collectedLeaveElements.splice(t,1)}if(t){const i=this._fetchNamespace(t);i&&i.insertNode(e,n)}i&&this.collectEnterElement(e)}collectEnterElement(t){this.collectedEnterElements.push(t)}markElementAsDisabled(t,e){e?this.disabledNodes.has(t)||(this.disabledNodes.add(t),Hp(t,"ng-animate-disabled")):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),zp(t,"ng-animate-disabled"))}removeNode(t,e,n,i){if(Mp(e)){const s=t?this._fetchNamespace(t):null;if(s?s.removeNode(e,i):this.markElementAsRemoved(t,e,!1,i),n){const n=this.namespacesByHostElement.get(e);n&&n.id!==t&&n.removeNode(e,i)}}else this._onRemovalComplete(e,i)}markElementAsRemoved(t,e,n,i){this.collectedLeaveElements.push(e),e.__ng_removed={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,i,s){return Mp(e)?this._fetchNamespace(t).listen(e,n,i,s):()=>{}}_buildInstruction(t,e,n,i,s){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,s)}destroyInnerAnimations(t){let e=this.driver.query(t,".ng-trigger",!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,".ng-animating",!0),e.forEach(t=>this.finishActiveQueriedAnimationOnElement(t)))}destroyActiveAnimationsForElement(t){const e=this.playersByElement.get(t);e&&e.forEach(t=>{t.queued?t.markedForDestroy=!0:t.destroy()})}finishActiveQueriedAnimationOnElement(t){const e=this.playersByQueriedElement.get(t);e&&e.forEach(t=>t.finish())}whenRenderingDone(){return new Promise(t=>{if(this.players.length)return hd(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t.__ng_removed;if(e&&e.setForRemoval){if(t.__ng_removed=Ap,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,".ng-animate-disabled")&&this.markElementAsDisabled(t,!1),this.driver.query(t,".ng-animate-disabled",!0).forEach(t=>{this.markElementAsDisabled(t,!1)})}flush(t=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((t,e)=>this._balanceNamespaceList(t,e)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let n=0;nt()),this._flushFns=[],this._whenQuietFns.length){const t=this._whenQuietFns;this._whenQuietFns=[],e.length?hd(e).onDone(()=>{t.forEach(t=>t())}):t.forEach(t=>t())}}reportError(t){throw new Error("Unable to process animations due to the following failed trigger transitions\n "+t.join("\n"))}_flushAnimations(t,e){const n=new lp,i=[],s=new Map,r=[],o=new Map,a=new Map,l=new Map,c=new Set;this.disabledNodes.forEach(t=>{c.add(t);const e=this.driver.query(t,".ng-animate-queued",!0);for(let n=0;n{const n="ng-enter"+f++;p.set(e,n),t.forEach(t=>Hp(t,n))});const m=[],g=new Set,_=new Set;for(let A=0;Ag.add(t)):_.add(t))}const y=new Map,b=Bp(u,Array.from(g));b.forEach((t,e)=>{const n="ng-leave"+f++;y.set(e,n),t.forEach(t=>Hp(t,n))}),t.push(()=>{d.forEach((t,e)=>{const n=p.get(e);t.forEach(t=>zp(t,n))}),b.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>zp(t,n))}),m.forEach(t=>{this.processLeaveNode(t)})});const v=[],w=[];for(let A=this._namespaceList.length-1;A>=0;A--)this._namespaceList[A].drainQueuedTransitions(e).forEach(t=>{const e=t.player,s=t.element;if(v.push(e),this.collectedEnterElements.length){const t=s.__ng_removed;if(t&&t.setForMove)return void e.destroy()}const c=!h||!this.driver.containsElement(h,s),u=y.get(s),d=p.get(s),f=this._buildInstruction(t,n,d,u,c);if(f.errors&&f.errors.length)w.push(f);else{if(c)return e.onStart(()=>Ld(s,f.fromStyles)),e.onDestroy(()=>Md(s,f.toStyles)),void i.push(e);if(t.isFallbackTransition)return e.onStart(()=>Ld(s,f.fromStyles)),e.onDestroy(()=>Md(s,f.toStyles)),void i.push(e);f.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(s,f.timelines),r.push({instruction:f,player:e,element:s}),f.queriedElements.forEach(t=>md(o,t,[]).push(e)),f.preStyleProps.forEach((t,e)=>{const n=Object.keys(t);if(n.length){let t=a.get(e);t||a.set(e,t=new Set),n.forEach(e=>t.add(e))}}),f.postStyleProps.forEach((t,e)=>{const n=Object.keys(t);let i=l.get(e);i||l.set(e,i=new Set),n.forEach(t=>i.add(t))})}});if(w.length){const t=[];w.forEach(e=>{t.push(`@${e.triggerName} has failed due to:\n`),e.errors.forEach(e=>t.push(`- ${e}\n`))}),v.forEach(t=>t.destroy()),this.reportError(t)}const C=new Map,E=new Map;r.forEach(t=>{const e=t.element;n.has(e)&&(E.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,C))}),i.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{md(C,e,[]).push(t),t.destroy()})});const S=m.filter(t=>$p(t,a,l)),x=new Map;jp(x,this.driver,_,l,"*").forEach(t=>{$p(t,a,l)&&S.push(t)});const k=new Map;d.forEach((t,e)=>{jp(k,this.driver,new Set(t),a,"!")}),S.forEach(t=>{const e=x.get(t),n=k.get(t);x.set(t,Object.assign(Object.assign({},e),n))});const T=[],I=[],D={};r.forEach(t=>{const{element:e,player:r,instruction:o}=t;if(n.has(e)){if(c.has(e))return r.onDestroy(()=>Md(e,o.toStyles)),r.disabled=!0,r.overrideTotalTime(o.totalTime),void i.push(r);let t=D;if(E.size>1){let n=e;const i=[];for(;n=n.parentNode;){const e=E.get(n);if(e){t=e;break}i.push(n)}i.forEach(e=>E.set(e,t))}const n=this._buildAnimation(r.namespaceId,o,C,s,k,x);if(r.setRealPlayer(n),t===D)T.push(r);else{const e=this.playersByElement.get(t);e&&e.length&&(r.parentPlayer=hd(e)),i.push(r)}}else Ld(e,o.fromStyles),r.onDestroy(()=>Md(e,o.toStyles)),I.push(r),c.has(e)&&i.push(r)}),I.forEach(t=>{const e=s.get(t.element);if(e&&e.length){const n=hd(e);t.setRealPlayer(n)}}),i.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let A=0;A!t.destroyed);i.length?qp(this,t,i):this.processLeaveNode(t)}return m.length=0,T.forEach(t=>{this.players.push(t),t.onDone(()=>{t.destroy();const e=this.players.indexOf(t);this.players.splice(e,1)}),t.play()}),T}elementContainsData(t,e){let n=!1;const i=e.__ng_removed;return i&&i.setForRemoval&&(n=!0),this.playersByElement.has(e)&&(n=!0),this.playersByQueriedElement.has(e)&&(n=!0),this.statesByElement.has(e)&&(n=!0),this._fetchNamespace(t).elementContainsData(e)||n}afterFlush(t){this._flushFns.push(t)}afterFlushAnimationsDone(t){this._whenQuietFns.push(t)}_getPreviousPlayers(t,e,n,i,s){let r=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(r=e)}else{const e=this.playersByElement.get(t);if(e){const t=!s||"void"==s;e.forEach(e=>{e.queued||(t||e.triggerName==i)&&r.push(e)})}}return(n||i)&&(r=r.filter(t=>!(n&&n!=t.namespaceId||i&&i!=t.triggerName))),r}_beforeAnimationBuild(t,e,n){const i=e.element,s=e.isRemovalTransition?void 0:t,r=e.isRemovalTransition?void 0:e.triggerName;for(const o of e.timelines){const t=o.element,a=t!==i,l=md(n,t,[]);this._getPreviousPlayers(t,a,s,r,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),l.push(t)})}Ld(i,e.fromStyles)}_buildAnimation(t,e,n,i,s,r){const o=e.triggerName,a=e.element,l=[],c=new Set,h=new Set,u=e.timelines.map(e=>{const u=e.element;c.add(u);const d=u.__ng_removed;if(d&&d.removedBeforeQueried)return new ad(e.duration,e.delay);const p=u!==a,f=function(t){const e=[];return function t(e,n){for(let i=0;it.getRealPlayer())).filter(t=>!!t.element&&t.element===u),m=s.get(u),g=r.get(u),_=ud(0,this._normalizer,0,e.keyframes,m,g),y=this._buildPlayer(e,_,f);if(e.subTimeline&&i&&h.add(u),p){const e=new Vp(t,o,u);e.setRealPlayer(y),l.push(e)}return y});l.forEach(t=>{md(this.playersByQueriedElement,t.element,[]).push(t),t.onDone(()=>function(t,e,n){let i;if(t instanceof Map){if(i=t.get(e),i){if(i.length){const t=i.indexOf(n);i.splice(t,1)}0==i.length&&t.delete(e)}}else if(i=t[e],i){if(i.length){const t=i.indexOf(n);i.splice(t,1)}0==i.length&&delete t[e]}return i}(this.playersByQueriedElement,t.element,t))}),c.forEach(t=>Hp(t,"ng-animating"));const d=hd(u);return d.onDestroy(()=>{c.forEach(t=>zp(t,"ng-animating")),Md(a,e.toStyles)}),h.forEach(t=>{md(i,t,[]).push(d)}),d}_buildPlayer(t,e,n){return e.length>0?this.driver.animate(t.element,e,t.duration,t.delay,t.easing,n):new ad(t.duration,t.delay)}}class Vp{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new ad,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(t){this._containsRealPlayer||(this._player=t,Object.keys(this._queuedCallbacks).forEach(e=>{this._queuedCallbacks[e].forEach(n=>dd(t,e,void 0,n))}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(t.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(t){this.totalTime=t}syncPlayerEvents(t){const e=this._player;e.triggerCallback&&t.onStart(()=>e.triggerCallback("start")),t.onDone(()=>this.finish()),t.onDestroy(()=>this.destroy())}_queueEvent(t,e){md(this._queuedCallbacks,t,[]).push(e)}onDone(t){this.queued&&this._queueEvent("done",t),this._player.onDone(t)}onStart(t){this.queued&&this._queueEvent("start",t),this._player.onStart(t)}onDestroy(t){this.queued&&this._queueEvent("destroy",t),this._player.onDestroy(t)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(t){this.queued||this._player.setPosition(t)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(t){const e=this._player;e.triggerCallback&&e.triggerCallback(t)}}function Mp(t){return t&&1===t.nodeType}function Lp(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function jp(t,e,n,i,s){const r=[];n.forEach(t=>r.push(Lp(t)));const o=[];i.forEach((n,i)=>{const r={};n.forEach(t=>{const n=r[t]=e.computeStyle(i,t,s);n&&0!=n.length||(i.__ng_removed=Pp,o.push(i))}),t.set(i,r)});let a=0;return n.forEach(t=>Lp(t,r[a++])),o}function Bp(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const i=new Set(e),s=new Map;return e.forEach(t=>{const e=function t(e){if(!e)return 1;let r=s.get(e);if(r)return r;const o=e.parentNode;return r=n.has(o)?o:i.has(o)?1:t(o),s.set(e,r),r}(t);1!==e&&n.get(e).push(t)}),n}function Hp(t,e){if(t.classList)t.classList.add(e);else{let n=t.$$classes;n||(n=t.$$classes={}),n[e]=!0}}function zp(t,e){if(t.classList)t.classList.remove(e);else{let n=t.$$classes;n&&delete n[e]}}function qp(t,e,n){hd(n).onDone(()=>t.processLeaveNode(e))}function $p(t,e,n){const i=n.get(t);if(!i)return!1;let s=e.get(t);return s?i.forEach(t=>s.add(t)):e.set(t,i),n.delete(t),!0}class Up{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new Fp(t,e,n),this._timelineEngine=new Ip(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,i,s){const r=t+"-"+i;let o=this._triggerCache[r];if(!o){const t=[],e=ep(this._driver,s,t);if(t.length)throw new Error(`The animation trigger "${i}" has failed to build due to the following errors:\n - ${t.join("\n - ")}`);o=function(t,e){return new xp(t,e)}(i,e),this._triggerCache[r]=o}this._transitionEngine.registerTrigger(e,i,o)}register(t,e){this._transitionEngine.register(t,e)}destroy(t,e){this._transitionEngine.destroy(t,e)}onInsert(t,e,n,i){this._transitionEngine.insertNode(t,e,n,i)}onRemove(t,e,n,i){this._transitionEngine.removeNode(t,e,i||!1,n)}disableAnimations(t,e){this._transitionEngine.markElementAsDisabled(t,e)}process(t,e,n,i){if("@"==n.charAt(0)){const[t,s]=gd(n);this._timelineEngine.command(t,e,s,i)}else this._transitionEngine.trigger(t,e,n,i)}listen(t,e,n,i,s){if("@"==n.charAt(0)){const[t,i]=gd(n);return this._timelineEngine.listen(t,e,i,s)}return this._transitionEngine.listen(t,e,n,i,s)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function Gp(t,e){let n=null,i=null;return Array.isArray(e)&&e.length?(n=Zp(e[0]),e.length>1&&(i=Zp(e[e.length-1]))):e&&(n=Zp(e)),n||i?new Wp(t,n,i):null}let Wp=(()=>{class t{constructor(e,n,i){this._element=e,this._startStyles=n,this._endStyles=i,this._state=0;let s=t.initialStylesByElement.get(e);s||t.initialStylesByElement.set(e,s={}),this._initialStyles=s}start(){this._state<1&&(this._startStyles&&Md(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Md(this._element,this._initialStyles),this._endStyles&&(Md(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(Ld(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Ld(this._element,this._endStyles),this._endStyles=null),Md(this._element,this._initialStyles),this._state=3)}}return t.initialStylesByElement=new WeakMap,t})();function Zp(t){let e=null;const n=Object.keys(t);for(let i=0;ithis._handleCallback(t)}apply(){!function(t,e){const n=nf(t,"").trim();n.length&&(function(t,e){let n=0;for(let i=0;i=this._delay&&n>=this._duration&&this.finish()}finish(){this._finished||(this._finished=!0,this._onDoneFn(),tf(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=nf(t,"").split(","),i=Xp(n,e);i>=0&&(n.splice(i,1),ef(t,"",n.join(",")))}(this._element,this._name))}}function Yp(t,e,n){ef(t,"PlayState",n,Jp(t,e))}function Jp(t,e){const n=nf(t,"");return n.indexOf(",")>0?Xp(n.split(","),e):Xp([n],e)}function Xp(t,e){for(let n=0;n=0)return n;return-1}function tf(t,e,n){n?t.removeEventListener("animationend",e):t.addEventListener("animationend",e)}function ef(t,e,n,i){const s="animation"+e;if(null!=i){const e=t.style[s];if(e.length){const t=e.split(",");t[i]=n,n=t.join(",")}}t.style[s]=n}function nf(t,e){return t.style["animation"+e]}class sf{constructor(t,e,n,i,s,r,o,a){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=s,this._finalStyles=o,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this.currentSnapshot={},this._state=0,this.easing=r||"linear",this.totalTime=i+s,this._buildStyler()}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}destroy(){this.init(),this._state>=4||(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}_flushDoneFns(){this._onDoneFns.forEach(t=>t()),this._onDoneFns=[]}_flushStartFns(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}finish(){this.init(),this._state>=3||(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}setPosition(t){this._styler.setPosition(t)}getPosition(){return this._styler.getPosition()}hasStarted(){return this._state>=2}init(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}play(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}pause(){this.init(),this._styler.pause()}restart(){this.reset(),this.play()}reset(){this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new Kp(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",()=>this.finish())}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}beforeDestroy(){this.init();const t={};if(this.hasStarted()){const e=this._state>=3;Object.keys(this._finalStyles).forEach(n=>{"offset"!=n&&(t[n]=e?this._finalStyles[n]:Qd(this.element,n))})}this.currentSnapshot=t}}class rf extends ad{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=Td(e)}init(){!this.__initialized&&this._startingStyles&&(this.__initialized=!0,Object.keys(this._styles).forEach(t=>{this._startingStyles[t]=this.element.style[t]}),super.init())}play(){this._startingStyles&&(this.init(),Object.keys(this._styles).forEach(t=>this.element.style.setProperty(t,this._styles[t])),super.play())}destroy(){this._startingStyles&&(Object.keys(this._startingStyles).forEach(t=>{const e=this._startingStyles[t];e?this.element.style.setProperty(t,e):this.element.style.removeProperty(t)}),this._startingStyles=null,super.destroy())}}class of{constructor(){this._count=0,this._head=document.querySelector("head"),this._warningIssued=!1}validateStyleProperty(t){return Ed(t)}matchesElement(t,e){return Sd(t,e)}containsElement(t,e){return xd(t,e)}query(t,e,n){return kd(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>Td(t));let i=`@keyframes ${e} {\n`,s="";n.forEach(t=>{s=" ";const e=parseFloat(t.offset);i+=`${s}${100*e}% {\n`,s+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=`${s}animation-timing-function: ${n};\n`));default:return void(i+=`${s}${e}: ${n};\n`)}}),i+=s+"}\n"}),i+="}\n";const r=document.createElement("style");return r.innerHTML=i,r}animate(t,e,n,i,s,r=[],o){o&&this._notifyFaultyScrubber();const a=r.filter(t=>t instanceof sf),l={};Gd(n,i)&&a.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const c=function(t){let e={};return t&&(Array.isArray(t)?t:[t]).forEach(t=>{Object.keys(t).forEach(n=>{"offset"!=n&&"easing"!=n&&(e[n]=t[n])})}),e}(e=Wd(t,e,l));if(0==n)return new rf(t,c);const h="gen_css_kf_"+this._count++,u=this.buildKeyframeElement(t,h,e);document.querySelector("head").appendChild(u);const d=Gp(t,e),p=new sf(t,e,h,n,i,s,c,d);return p.onDestroy(()=>{var t;(t=u).parentNode.removeChild(t)}),p}_notifyFaultyScrubber(){this._warningIssued||(console.warn("@angular/animations: please load the web-animations.js polyfill to allow programmatic access...\n"," visit http://bit.ly/IWukam to learn more about using the web-animation-js polyfill."),this._warningIssued=!0)}}class af{constructor(t,e,n,i){this.element=t,this.keyframes=e,this.options=n,this._specialStyles=i,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this.time=0,this.parentPlayer=null,this.currentSnapshot={},this._duration=n.duration,this._delay=n.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_triggerWebAnimation(t,e,n){return t.animate(e,n)}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(t=>t()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}setPosition(t){this.domPlayer.currentTime=t*this.time}getPosition(){return this.domPlayer.currentTime/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(e=>{"offset"!=e&&(t[e]=this._finished?this._finalKeyframe[e]:Qd(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class lf{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(cf().toString()),this._cssKeyframesDriver=new of}validateStyleProperty(t){return Ed(t)}matchesElement(t,e){return Sd(t,e)}containsElement(t,e){return xd(t,e)}query(t,e,n){return kd(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,i,s,r=[],o){if(!o&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,s,r);const a={duration:n,delay:i,fill:0==i?"both":"forwards"};s&&(a.easing=s);const l={},c=r.filter(t=>t instanceof af);Gd(n,i)&&c.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const h=Gp(t,e=Wd(t,e=e.map(t=>Nd(t,!1)),l));return new af(t,e,a,h)}}function cf(){return"undefined"!=typeof window&&void 0!==window.document&&Element.prototype.animate||{}}let hf=(()=>{class t extends Xu{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:ae.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?nd(t):t;return pf(this._renderer,null,e,"register",[n]),new uf(e,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Wt(oa),Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class uf extends class{}{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new df(this._id,t,e||{},this._renderer)}}class df{constructor(t,e,n,i){this.id=t,this.element=e,this._renderer=i,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",n)}_listen(t,e){return this._renderer.listen(this.element,`@@${this.id}:${t}`,e)}_command(t,...e){return pf(this._renderer,this.element,this.id,t,e)}onDone(t){this._listen("done",t)}onStart(t){this._listen("start",t)}onDestroy(t){this._listen("destroy",t)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset")}setPosition(t){this._command("setPosition",t)}getPosition(){return 0}}function pf(t,e,n,i,s){return t.setProperty(e,`@@${n}:${i}`,s)}let ff=(()=>{class t{constructor(t,e,n){this.delegate=t,this.engine=e,this._zone=n,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),e.onRemovalComplete=(t,e)=>{e&&e.parentNode(t)&&e.removeChild(t.parentNode,t)}}createRenderer(t,e){const n=this.delegate.createRenderer(t,e);if(!(t&&e&&e.data&&e.data.animation)){let t=this._rendererCache.get(n);return t||(t=new mf("",n,this.engine),this._rendererCache.set(n,t)),t}const i=e.id,s=e.id+"-"+this._currentId;this._currentId++,this.engine.register(s,t);const r=e=>{Array.isArray(e)?e.forEach(r):this.engine.registerTrigger(i,s,t,e.name,e)};return e.data.animation.forEach(r),new gf(this,s,n,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){this.promise.then(()=>{this._microtaskId++})}scheduleListenerCallback(t,e,n){t>=0&&te(n)):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(t=>{const[e,n]=t;e(n)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([e,n]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}}return t.\u0275fac=function(e){return new(e||t)(Wt(oa),Wt(Up),Wt(Vl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class mf{constructor(t,e,n){this.namespaceId=t,this.delegate=e,this.engine=n,this.destroyNode=this.delegate.destroyNode?t=>e.destroyNode(t):null}get data(){return this.delegate.data}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()}createElement(t,e){return this.delegate.createElement(t,e)}createComment(t){return this.delegate.createComment(t)}createText(t){return this.delegate.createText(t)}appendChild(t,e){this.delegate.appendChild(t,e),this.engine.onInsert(this.namespaceId,e,t,!1)}insertBefore(t,e,n){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,!0)}removeChild(t,e,n){this.engine.onRemove(this.namespaceId,e,this.delegate,n)}selectRootElement(t,e){return this.delegate.selectRootElement(t,e)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setAttribute(t,e,n,i){this.delegate.setAttribute(t,e,n,i)}removeAttribute(t,e,n){this.delegate.removeAttribute(t,e,n)}addClass(t,e){this.delegate.addClass(t,e)}removeClass(t,e){this.delegate.removeClass(t,e)}setStyle(t,e,n,i){this.delegate.setStyle(t,e,n,i)}removeStyle(t,e,n){this.delegate.removeStyle(t,e,n)}setProperty(t,e,n){"@"==e.charAt(0)&&"@.disabled"==e?this.disableAnimations(t,!!n):this.delegate.setProperty(t,e,n)}setValue(t,e){this.delegate.setValue(t,e)}listen(t,e,n){return this.delegate.listen(t,e,n)}disableAnimations(t,e){this.engine.disableAnimations(t,e)}}class gf extends mf{constructor(t,e,n,i){super(e,n,i),this.factory=t,this.namespaceId=e}setProperty(t,e,n){"@"==e.charAt(0)?"."==e.charAt(1)&&"@.disabled"==e?this.disableAnimations(t,n=void 0===n||!!n):this.engine.process(this.namespaceId,t,e.substr(1),n):this.delegate.setProperty(t,e,n)}listen(t,e,n){if("@"==e.charAt(0)){const i=function(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(t);let s=e.substr(1),r="";return"@"!=s.charAt(0)&&([s,r]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(s)),this.engine.listen(this.namespaceId,i,s,r,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}let _f=(()=>{class t extends Up{constructor(t,e,n){super(t.body,e,n)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac),Wt(Dd),Wt(yp))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const yf=new Mt("AnimationModuleType"),bf=[{provide:Dd,useFactory:function(){return"function"==typeof cf()?new lf:new of}},{provide:yf,useValue:"BrowserAnimations"},{provide:Xu,useClass:hf},{provide:yp,useFactory:function(){return new bp}},{provide:Up,useClass:_f},{provide:oa,useFactory:function(t,e,n){return new ff(t,e,n)},deps:[Mc,Up,Vl]}];let vf=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:bf,imports:[Yc]}),t})();const wf=new ua("10.1.0"),Cf=new Mt("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}});let Ef,Sf=(()=>{class t{constructor(t,e,n){this._hasDoneGlobalChecks=!1,this._document=n,t._applyBodyHighContrastModeCssClasses(),this._sanityChecks=e,this._hasDoneGlobalChecks||(this._checkDoctypeIsDefined(),this._checkThemeIsPresent(),this._checkCdkVersionMatch(),this._hasDoneGlobalChecks=!0)}_getDocument(){const t=this._document||document;return"object"==typeof t&&t?t:null}_getWindow(){const t=this._getDocument(),e=(null==t?void 0:t.defaultView)||window;return"object"==typeof e&&e?e:null}_checksAreEnabled(){return wi()&&!this._isTestEnv()}_isTestEnv(){const t=this._getWindow();return t&&(t.__karma__||t.jasmine)}_checkDoctypeIsDefined(){const t=this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.doctype),e=this._getDocument();t&&e&&!e.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}_checkThemeIsPresent(){const t=!this._checksAreEnabled()||!1===this._sanityChecks||!this._sanityChecks.theme,e=this._getDocument();if(t||!e||!e.body||"function"!=typeof getComputedStyle)return;const n=e.createElement("div");n.classList.add("mat-theme-loaded-marker"),e.body.appendChild(n);const i=getComputedStyle(n);i&&"none"!==i.display&&console.warn("Could not find Angular Material core theme. Most Material components may not work as expected. For more info refer to the theming guide: https://material.angular.io/guide/theming"),e.body.removeChild(n)}_checkCdkVersionMatch(){this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.version)&&wf.full!==Ju.full&&console.warn("The Angular Material version ("+wf.full+") does not match the Angular CDK version ("+Ju.full+").\nPlease ensure the versions of these two packages exactly match.")}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(Yu),Wt(Cf,8),Wt(ac,8))},imports:[[Lh],Lh]}),t})();function xf(t,e){return class extends t{constructor(...t){super(...t),this.color=e}get color(){return this._color}set color(t){const n=t||e;n!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove("mat-"+this._color),n&&this._elementRef.nativeElement.classList.add("mat-"+n),this._color=n)}}}function kf(t){return class extends t{constructor(...t){super(...t),this.errorState=!1,this.stateChanges=new E}updateErrorState(){const t=this.errorState,e=(this.errorStateMatcher||this._defaultErrorStateMatcher).isErrorState(this.ngControl?this.ngControl.control:null,this._parentFormGroup||this._parentForm);e!==t&&(this.errorState=e,this.stateChanges.next())}}}try{Ef="undefined"!=typeof Intl}catch(P_){Ef=!1}let Tf=(()=>{class t{isErrorState(t,e){return!!(t&&t.invalid&&(t.touched||e&&e.submitted))}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return new t},token:t,providedIn:"root"}),t})(),If=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sf],Sf]}),t})(),Df=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sf,Ah],Sf]}),t})(),Af=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();const Pf=new Mt("mat-label-global-options"),Of=["underline"],Rf=["connectionContainer"],Nf=["inputContainer"],Ff=["label"];function Vf(t,e){1&t&&(mo(0),uo(1,"div",14),fo(2,"div",15),fo(3,"div",16),fo(4,"div",17),po(),uo(5,"div",18),fo(6,"div",15),fo(7,"div",16),fo(8,"div",17),po(),go())}function Mf(t,e){1&t&&(uo(0,"div",19),xo(1,1),po())}function Lf(t,e){if(1&t&&(mo(0),xo(1,2),uo(2,"span"),Vo(3),po(),go()),2&t){const t=Co(2);hs(3),Mo(t._control.placeholder)}}function jf(t,e){1&t&&xo(0,3,["*ngSwitchCase","true"])}function Bf(t,e){1&t&&(uo(0,"span",23),Vo(1," *"),po())}function Hf(t,e){if(1&t){const t=_o();uo(0,"label",20,21),bo("cdkObserveContent",(function(){return Je(t),Co().updateOutlineGap()})),ao(2,Lf,4,1,"ng-container",12),ao(3,jf,1,0,"ng-content",12),ao(4,Bf,2,0,"span",22),po()}if(2&t){const t=Co();Ao("mat-empty",t._control.empty&&!t._shouldAlwaysFloat)("mat-form-field-empty",t._control.empty&&!t._shouldAlwaysFloat)("mat-accent","accent"==t.color)("mat-warn","warn"==t.color),co("cdkObserveContentDisabled","outline"!=t.appearance)("id",t._labelId)("ngSwitch",t._hasLabel()),oo("for",t._control.id)("aria-owns",t._control.id),hs(2),co("ngSwitchCase",!1),hs(1),co("ngSwitchCase",!0),hs(1),co("ngIf",!t.hideRequiredMarker&&t._control.required&&!t._control.disabled)}}function zf(t,e){1&t&&(uo(0,"div",24),xo(1,4),po())}function qf(t,e){if(1&t&&(uo(0,"div",25,26),fo(2,"span",27),po()),2&t){const t=Co();hs(2),Ao("mat-accent","accent"==t.color)("mat-warn","warn"==t.color)}}function $f(t,e){1&t&&(uo(0,"div"),xo(1,5),po()),2&t&&co("@transitionMessages",Co()._subscriptAnimationState)}function Uf(t,e){if(1&t&&(uo(0,"div",31),Vo(1),po()),2&t){const t=Co(2);co("id",t._hintLabelId),hs(1),Mo(t.hintLabel)}}function Gf(t,e){if(1&t&&(uo(0,"div",28),ao(1,Uf,2,2,"div",29),xo(2,6),fo(3,"div",30),xo(4,7),po()),2&t){const t=Co();co("@transitionMessages",t._subscriptAnimationState),hs(1),co("ngIf",t.hintLabel)}}const Wf=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Zf=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Qf=new Mt("MatError"),Kf={transitionMessages:td("transitionMessages",[sd("enter",id({opacity:1,transform:"translateY(0%)"})),rd("void => enter",[id({opacity:0,transform:"translateY(-100%)"}),ed("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Yf=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t}),t})();function Jf(t){return Error(`A hint was already declared for 'align="${t}"'.`)}const Xf=new Mt("MatHint");let tm=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["mat-label"]]}),t})(),em=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["mat-placeholder"]]}),t})();const nm=new Mt("MatPrefix"),im=new Mt("MatSuffix");let sm=0;class rm{constructor(t){this._elementRef=t}}const om=xf(rm,"primary"),am=new Mt("MAT_FORM_FIELD_DEFAULT_OPTIONS"),lm=new Mt("MatFormField");let cm=(()=>{class t extends om{constructor(t,e,n,i,s,r,o,a){super(t),this._elementRef=t,this._changeDetectorRef=e,this._dir=i,this._defaults=s,this._platform=r,this._ngZone=o,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new E,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+sm++,this._labelId="mat-form-field-label-"+sm++,this._labelOptions=n||{},this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==a,this.appearance=s&&s.appearance?s.appearance:"legacy",this._hideRequiredMarker=!(!s||null==s.hideRequiredMarker)&&s.hideRequiredMarker}get appearance(){return this._appearance}set appearance(t){const e=this._appearance;this._appearance=t||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&e!==t&&(this._outlineGapCalculationNeededOnStable=!0)}get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(t){this._hideRequiredMarker=Jc(t)}get _shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}get _canLabelFloat(){return"never"!==this.floatLabel}get hintLabel(){return this._hintLabel}set hintLabel(t){this._hintLabel=t,this._processHints()}get floatLabel(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel}set floatLabel(t){t!==this._floatLabel&&(this._floatLabel=t||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}get _control(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic}set _control(t){this._explicitFormFieldControl=t}get _labelChild(){return this._labelChildNonStatic||this._labelChildStatic}getConnectedOverlayOrigin(){return this._connectionContainerRef||this._elementRef}ngAfterContentInit(){this._validateControlChild();const t=this._control;t.controlType&&this._elementRef.nativeElement.classList.add("mat-form-field-type-"+t.controlType),t.stateChanges.pipe(Eh(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(bh(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.asObservable().pipe(bh(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),U(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Eh(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Eh(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(bh(this._destroyed)).subscribe(()=>{"function"==typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this.updateOutlineGap())}):this.updateOutlineGap()})}ngAfterContentChecked(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}ngAfterViewInit(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_shouldForward(t){const e=this._control?this._control.ngControl:null;return e&&e[t]}_hasPlaceholder(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}_hasLabel(){return!!this._labelChild}_shouldLabelFloat(){return this._canLabelFloat&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat)}_hideControlPlaceholder(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}_hasFloatingLabel(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_animateAndLockLabel(){this._hasFloatingLabel()&&this._canLabelFloat&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,nh(this._label.nativeElement,"transitionend").pipe($h(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){if(this._control.placeholder&&this._placeholderChild)throw Error("Placeholder attribute and child element were both specified.")}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){if(this._hintChildren){let t,e;this._hintChildren.forEach(n=>{if("start"===n.align){if(t||this.hintLabel)throw Jf("start");t=n}else if("end"===n.align){if(e)throw Jf("end");e=n}})}}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||this._labelOptions.float||"auto"}_syncDescribedByIds(){if(this._control){let t=[];if("hint"===this._getDisplayedMessages()){const e=this._hintChildren?this._hintChildren.find(t=>"start"===t.align):null,n=this._hintChildren?this._hintChildren.find(t=>"end"===t.align):null;e?t.push(e.id):this._hintLabel&&t.push(this._hintLabelId),n&&t.push(n.id)}else this._errorChildren&&(t=this._errorChildren.map(t=>t.id));this._control.setDescribedByIds(t)}}_validateControlChild(){if(!this._control)throw Error("mat-form-field must contain a MatFormFieldControl.")}updateOutlineGap(){const t=this._label?this._label.nativeElement:null;if("outline"!==this.appearance||!t||!t.children.length||!t.textContent.trim())return;if(!this._platform.isBrowser)return;if(!this._isAttachedToDOM())return void(this._outlineGapCalculationNeededImmediately=!0);let e=0,n=0;const i=this._connectionContainerRef.nativeElement,s=i.querySelectorAll(".mat-form-field-outline-start"),r=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){const s=i.getBoundingClientRect();if(0===s.width&&0===s.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);const r=this._getStartEnd(s),o=t.children,a=this._getStartEnd(o[0].getBoundingClientRect());let l=0;for(let t=0;t0?.75*l+10:0}for(let o=0;o{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[wc,Sf,Ku],Sf]}),t})();function um(...t){if(1===t.length){const e=t[0];if(l(e))return dm(e,null);if(c(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return dm(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return dm(t=1===t.length&&l(t[0])?t[0]:t,null).pipe(F(t=>e(...t)))}return dm(t,null)}function dm(t,e){return new y(n=>{const i=t.length;if(0===i)return void n.complete();const s=new Array(i);let r=0,o=0;for(let a=0;a{c||(c=!0,o++),s[a]=t},error:t=>n.error(t),complete:()=>{r++,r!==i&&c||(o===i&&n.next(e?e.reduce((t,e,n)=>(t[e]=s[n],t),{}):s),n.complete())}}))}})}const pm=new Mt("NgValueAccessor"),fm={provide:pm,useExisting:Ct(()=>mm),multi:!0};let mm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.checked)}))("blur",(function(){return e.onTouched()}))},features:[ta([fm])]}),t})();const gm={provide:pm,useExisting:Ct(()=>ym),multi:!0},_m=new Mt("CompositionEventMode");let ym=(()=>{class t{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=t=>{},this.onTouched=()=>{},this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=oc()?oc().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa),lo(_m,8))},t.\u0275dir=_e({type:t,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(t,e){1&t&&bo("input",(function(t){return e._handleInput(t.target.value)}))("blur",(function(){return e.onTouched()}))("compositionstart",(function(){return e._compositionStart()}))("compositionend",(function(t){return e._compositionEnd(t.target.value)}))},features:[ta([gm])]}),t})(),bm=(()=>{class t{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t}),t})(),vm=(()=>{class t extends bm{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(e){return wm(e||t)},t.\u0275dir=_e({type:t,features:[zo]}),t})();const wm=ri(vm);function Cm(){throw new Error("unimplemented")}class Em extends bm{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Cm()}get asyncValidator(){return Cm()}}let Sm=(()=>{class t extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(lo(Em,2))},t.\u0275dir=_e({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&Ao("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[zo]}),t})();function xm(t){return null==t||0===t.length}function km(t){return null!=t&&"number"==typeof t.length}const Tm=new Mt("NgValidators"),Im=new Mt("NgAsyncValidators"),Dm=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class Am{static min(t){return e=>{if(xm(e.value)||xm(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(xm(e.value)||xm(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return xm(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return xm(t.value)||Dm.test(t.value)?null:{email:!0}}static minLength(t){return e=>xm(e.value)||!km(e.value)?null:e.value.lengthkm(e.value)&&e.value.length>t?{maxlength:{requiredLength:t,actualLength:e.value.length}}:null}static pattern(t){if(!t)return Am.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(xm(t.value))return null;const i=t.value;return e.test(i)?null:{pattern:{requiredPattern:n,actualValue:i}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(Pm);return 0==e.length?null:function(t){return Rm(function(t,e){return e.map(e=>e(t))}(t,e))}}static composeAsync(t){if(!t)return null;const e=t.filter(Pm);return 0==e.length?null:function(t){return um(function(t,e){return e.map(e=>e(t))}(t,e).map(Om)).pipe(F(Rm))}}}function Pm(t){return null!=t}function Om(t){const e=yo(t)?j(t):t;if(!(n=e)||"function"!=typeof n.subscribe)throw new Error("Expected validator to return Promise or Observable.");var n;return e}function Rm(t){let e={};return t.forEach(t=>{e=null!=t?Object.assign(Object.assign({},e),t):e}),0===Object.keys(e).length?null:e}function Nm(t){return t.validate?e=>t.validate(e):t}function Fm(t){return t.validate?e=>t.validate(e):t}const Vm={provide:pm,useExisting:Ct(()=>Mm),multi:!0};let Mm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(t,e){1&t&&bo("input",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},features:[ta([Vm])]}),t})();const Lm={provide:pm,useExisting:Ct(()=>Bm),multi:!0};let jm=(()=>{class t{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Bm=(()=>{class t{constructor(t,e,n,i){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=i,this.onChange=()=>{},this.onTouched=()=>{}}ngOnInit(){this._control=this._injector.get(Em),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa),lo(jm),lo(Jr))},t.\u0275dir=_e({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(){return e.onChange()}))("blur",(function(){return e.onTouched()}))},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[ta([Lm])]}),t})();const Hm={provide:pm,useExisting:Ct(()=>zm),multi:!0};let zm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.value)}))("input",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},features:[ta([Hm])]}),t})();const qm='\n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',$m='\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Um='\n
\n
\n \n
\n
',Gm={provide:pm,useExisting:Ct(()=>Wm),multi:!0};let Wm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=e=>{this.value=this._getOptionValue(e),t(this.value)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},inputs:{compareWith:"compareWith"},features:[ta([Gm])]}),t})();const Zm={provide:pm,useExisting:Ct(()=>Qm),multi:!0};let Qm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=(t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)}}else e=(t,e)=>{t._setSelected(!1)};this._optionMap.forEach(e)}registerOnChange(t){this.onChange=e=>{const n=[];if(void 0!==e.selectedOptions){const t=e.selectedOptions;for(let e=0;e{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Jm(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Jm(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function Jm(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Xm(t,e){null==t&&eg(e,"Cannot find control with"),t.validator=Am.compose([t.validator,e.validator]),t.asyncValidator=Am.composeAsync([t.asyncValidator,e.asyncValidator])}function tg(t){return eg(t,"There is no FormControl instance attached to form control element with")}function eg(t,e){let n;throw n=t.path.length>1?`path: '${t.path.join(" -> ")}'`:t.path[0]?`name: '${t.path}'`:"unspecified name attribute",new Error(`${e} ${n}`)}function ng(t){return null!=t?Am.compose(t.map(Nm)):null}function ig(t){return null!=t?Am.composeAsync(t.map(Fm)):null}const sg=[mm,zm,Mm,Wm,Qm,Bm];function rg(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function og(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}function ag(t){const e=cg(t)?t.validators:t;return Array.isArray(e)?ng(e):e||null}function lg(t,e){const n=cg(e)?e.asyncValidators:t;return Array.isArray(n)?ig(n):n||null}function cg(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class hg{constructor(t,e){this.validator=t,this.asyncValidator=e,this._onCollectionChange=()=>{},this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return"VALID"===this.status}get invalid(){return"INVALID"===this.status}get pending(){return"PENDING"==this.status}get disabled(){return"DISABLED"===this.status}get enabled(){return"DISABLED"!==this.status}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=ag(t)}setAsyncValidators(t){this.asyncValidator=lg(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status="PENDING",!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="DISABLED",this.errors=null,this._forEachChild(e=>{e.disable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="VALID",this._forEachChild(e=>{e.enable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),"VALID"!==this.status&&"PENDING"!==this.status||this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?"DISABLED":"VALID"}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status="PENDING";const e=Om(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e)return null;if(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length)return null;let i=t;return e.forEach(t=>{i=i instanceof dg?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof pg&&i.at(t)||null}),i}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Za,this.statusChanges=new Za}_calculateStatus(){return this._allControlsDisabled()?"DISABLED":this.errors?"INVALID":this._anyControlsHaveStatus("PENDING")?"PENDING":this._anyControlsHaveStatus("INVALID")?"INVALID":"VALID"}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){cg(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class ug extends hg{constructor(t=null,e,n){super(ag(e),lg(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=()=>{}}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){this._isBoxedValue(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}}class dg extends hg{constructor(t,e,n){super(ag(e),lg(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,i)=>{n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof ug?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[t])throw new Error(`Cannot find form control with name: ${t}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const e of Object.keys(this.controls)){const n=this.controls[e];if(this.contains(e)&&t(n))return!0}return!1}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,i)=>{n=e(n,t,i)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class pg extends hg{constructor(t,e,n){super(ag(e),lg(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,i)=>{n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof ug?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(t))throw new Error("Cannot find form control at index "+t)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const fg={provide:vm,useExisting:Ct(()=>gg)},mg=(()=>Promise.resolve(null))();let gg=(()=>{class t extends vm{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Za,this.form=new dg({},ng(t),ig(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){mg.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Ym(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){mg.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),og(this._directives,t)})}addFormGroup(t){mg.then(()=>{const e=this._findContainer(t.path),n=new dg({});Xm(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){mg.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){mg.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,rg(this.form,this._directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}return t.\u0275fac=function(e){return new(e||t)(lo(Tm,10),lo(Im,10))},t.\u0275dir=_e({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&bo("submit",(function(t){return e.onSubmit(t)}))("reset",(function(){return e.onReset()}))},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ta([fg]),zo]}),t})(),_g=(()=>{class t extends vm{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Km(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return ng(this._validators)}get asyncValidator(){return ig(this._asyncValidators)}_checkParentType(){}}return t.\u0275fac=function(e){return yg(e||t)},t.\u0275dir=_e({type:t,features:[zo]}),t})();const yg=ri(_g);class bg{static modelParentException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup's partner directive "formControlName" instead. Example:\n\n ${qm}\n\n Or, if you'd like to avoid registering this form control, indicate that it's standalone in ngModelOptions:\n\n Example:\n\n \n
\n \n \n
\n `)}static formGroupNameException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n ${$m}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Um}`)}static missingNameException(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')}static modelGroupParentException(){throw new Error(`\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n ${$m}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Um}`)}}const vg={provide:vm,useExisting:Ct(()=>wg)};let wg=(()=>{class t extends _g{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof gg||bg.modelGroupParentException()}}return t.\u0275fac=function(e){return new(e||t)(lo(vm,5),lo(Tm,10),lo(Im,10))},t.\u0275dir=_e({type:t,selectors:[["","ngModelGroup",""]],inputs:{name:["ngModelGroup","name"]},exportAs:["ngModelGroup"],features:[ta([vg]),zo]}),t})();const Cg={provide:Em,useExisting:Ct(()=>Sg)},Eg=(()=>Promise.resolve(null))();let Sg=(()=>{class t extends Em{constructor(t,e,n,i){super(),this.control=new ug,this._registered=!1,this.update=new Za,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||eg(t,"Value accessor was not provided as an array for form control with");let n=void 0,i=void 0,s=void 0;return e.forEach(e=>{var r;e.constructor===ym?n=e:(r=e,sg.some(t=>r.constructor===t)?(i&&eg(t,"More than one built-in value accessor matches form control with"),i=e):(s&&eg(t,"More than one custom value accessor matches form control with"),s=e))}),s||i||n||(eg(t,"No valid value accessor for form control with"),null)}(this,i)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!Object.is(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Km(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return ng(this._rawValidators)}get asyncValidator(){return ig(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Ym(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof wg)&&this._parent instanceof _g?bg.formGroupNameException():this._parent instanceof wg||this._parent instanceof gg||bg.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||bg.missingNameException()}_updateValue(t){Eg.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;Eg.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}return t.\u0275fac=function(e){return new(e||t)(lo(vm,9),lo(Tm,10),lo(Im,10),lo(pm,10))},t.\u0275dir=_e({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[ta([Cg]),zo,De]}),t})();const xg={provide:vm,useExisting:Ct(()=>kg)};let kg=(()=>{class t extends vm{constructor(t,e){super(),this._validators=t,this._asyncValidators=e,this.submitted=!1,this.directives=[],this.form=null,this.ngSubmit=new Za}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations())}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return Ym(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){og(this.directives,t)}addFormGroup(t){const e=this.form.get(t.path);Xm(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormGroup(t){}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){const e=this.form.get(t.path);Xm(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormArray(t){}getFormArray(t){return this.form.get(t.path)}updateModel(t,e){this.form.get(t.path).setValue(e)}onSubmit(t){return this.submitted=!0,rg(this.form,this.directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_updateDomValue(){this.directives.forEach(t=>{const e=this.form.get(t.path);t.control!==e&&(function(t,e){e.valueAccessor.registerOnChange(()=>tg(e)),e.valueAccessor.registerOnTouched(()=>tg(e)),e._rawValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),e._rawAsyncValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),t&&t._clearChangeFns()}(t.control,t),e&&Ym(e,t),t.control=e)}),this.form._updateTreeValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(()=>this._updateDomValue()),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{}),this._oldForm=this.form}_updateValidators(){const t=ng(this._validators);this.form.validator=Am.compose([this.form.validator,t]);const e=ig(this._asyncValidators);this.form.asyncValidator=Am.composeAsync([this.form.asyncValidator,e])}_checkFormPresent(){this.form||class{static controlParentException(){throw new Error("formControlName must be used with a parent formGroup directive. You'll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n "+qm)}static ngModelGroupException(){throw new Error(`formControlName cannot be used with an ngModelGroup parent. It is only compatible with parents\n that also have a "form" prefix: formGroupName, formArrayName, or formGroup.\n\n Option 1: Update the parent to be formGroupName (reactive form strategy)\n\n ${$m}\n\n Option 2: Use ngModel instead of formControlName (template-driven strategy)\n\n ${Um}`)}static missingFormException(){throw new Error("formGroup expects a FormGroup instance. Please pass one in.\n\n Example:\n\n "+qm)}static groupParentException(){throw new Error("formGroupName must be used with a parent formGroup directive. You'll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n "+$m)}static arrayParentException(){throw new Error('formArrayName must be used with a parent formGroup directive. You\'ll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n \n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });')}static disabledAttrWarning(){console.warn("\n It looks like you're using the disabled attribute with a reactive form directive. If you set disabled to true\n when you set up this control in your component class, the disabled attribute will actually be set in the DOM for\n you. We recommend using this approach to avoid 'changed after checked' errors.\n\n Example:\n form = new FormGroup({\n first: new FormControl({value: 'Nancy', disabled: true}, Validators.required),\n last: new FormControl('Drew', Validators.required)\n });\n ")}static ngModelWarning(t){console.warn(`\n It looks like you're using ngModel on the same form field as ${t}.\n Support for using the ngModel input property and ngModelChange event with\n reactive form directives has been deprecated in Angular v6 and will be removed\n in a future version of Angular.\n\n For more information on this, see our API docs here:\n https://angular.io/api/forms/${"formControl"===t?"FormControlDirective":"FormControlName"}#use-with-ngmodel\n `)}}.missingFormException()}}return t.\u0275fac=function(e){return new(e||t)(lo(Tm,10),lo(Im,10))},t.\u0275dir=_e({type:t,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&bo("submit",(function(t){return e.onSubmit(t)}))("reset",(function(){return e.onReset()}))},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ta([xg]),zo,De]}),t})(),Tg=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})(),Ig=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[jm],imports:[Tg]}),t})();const Dg=new Mt("MAT_INPUT_VALUE_ACCESSOR"),Ag=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let Pg=0;class Og{constructor(t,e,n,i){this._defaultErrorStateMatcher=t,this._parentForm=e,this._parentFormGroup=n,this.ngControl=i}}const Rg=kf(Og);let Ng=(()=>{class t extends Rg{constructor(t,e,n,i,s,r,o,a,l,c){super(r,i,s,n),this._elementRef=t,this._platform=e,this.ngControl=n,this._autofillMonitor=a,this._formField=c,this._uid="mat-input-"+Pg++,this.focused=!1,this.stateChanges=new E,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._required=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(t=>Oh().has(t));const h=this._elementRef.nativeElement,u=h.nodeName.toLowerCase();this._inputValueAccessor=o||h,this._previousNativeValue=this.value,this.id=this.id,e.IOS&&l.runOutsideAngular(()=>{t.nativeElement.addEventListener("keyup",t=>{let e=t.target;e.value||e.selectionStart||e.selectionEnd||(e.setSelectionRange(1,1),e.setSelectionRange(0,0))})}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===u,this._isTextarea="textarea"===u,this._isNativeSelect&&(this.controlType=h.multiple?"mat-native-select-multiple":"mat-native-select")}get disabled(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled}set disabled(t){this._disabled=Jc(t),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(t){this._id=t||this._uid}get required(){return this._required}set required(t){this._required=Jc(t)}get type(){return this._type}set type(t){this._type=t||"text",this._validateType(),!this._isTextarea&&Oh().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}get value(){return this._inputValueAccessor.value}set value(t){t!==this.value&&(this._inputValueAccessor.value=t,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(t){this._readonly=Jc(t)}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(t=>{this.autofilled=t.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement)}ngDoCheck(){this.ngControl&&this.updateErrorState(),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(t){this._elementRef.nativeElement.focus(t)}_focusChanged(t){t===this.focused||this.readonly&&t||(this.focused=t,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){const t=this._formField,e=t&&t._hideControlPlaceholder()?null:this.placeholder;if(e!==this._previousPlaceholder){const t=this._elementRef.nativeElement;this._previousPlaceholder=e,e?t.setAttribute("placeholder",e):t.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const t=this._elementRef.nativeElement.value;this._previousNativeValue!==t&&(this._previousNativeValue=t,this.stateChanges.next())}_validateType(){if(Ag.indexOf(this._type)>-1)throw Error(`Input type "${this._type}" isn't supported by matInput.`)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let t=this._elementRef.nativeElement.validity;return t&&t.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const t=this._elementRef.nativeElement,e=t.options[0];return this.focused||t.multiple||!this.empty||!!(t.selectedIndex>-1&&e&&e.label)}return this.focused||!this.empty}setDescribedByIds(t){this._ariaDescribedby=t.join(" ")}onContainerClick(){this.focused||this.focus()}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Dh),lo(Em,10),lo(gg,8),lo(kg,8),lo(Tf),lo(Dg,10),lo(zu),lo(Vl),lo(cm,8))},t.\u0275dir=_e({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:10,hostBindings:function(t,e){1&t&&bo("focus",(function(){return e._focusChanged(!0)}))("blur",(function(){return e._focusChanged(!1)}))("input",(function(){return e._onInput()})),2&t&&(Bo("disabled",e.disabled)("required",e.required),oo("id",e.id)("data-placeholder",e.placeholder)("readonly",e.readonly&&!e._isNativeSelect||null)("aria-describedby",e._ariaDescribedby||null)("aria-invalid",e.errorState)("aria-required",e.required.toString()),Ao("mat-input-server",e._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher"},exportAs:["matInput"],features:[ta([{provide:Yf,useExisting:t}]),zo,De]}),t})(),Fg=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[Tf],imports:[[qu,hm],qu,hm]}),t})();class Vg{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Mg(t,this.selector,this.caught))}}class Mg extends N{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const i=new k(this,void 0,void 0);this.add(i);const s=R(this,n,void 0,void 0,i);s!==i&&this.add(s)}}}class Lg{constructor(t){this.callback=t}call(t,e){return e.subscribe(new jg(t,this.callback))}}class jg extends f{constructor(t,e){super(t),this.add(new u(e))}}class Bg{}class Hg{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),i=n.toLowerCase(),s=t.slice(e+1).trim();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const i=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(i,n),this.maybeSetNormalizedName(e,i))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof Hg?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new Hg;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof Hg?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const i=("a"===t.op?this.headers.get(e):void 0)||[];i.push(...n),this.headers.set(e,i);break;case"d":const s=t.value;if(s){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===s.indexOf(t)),0===t.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class zg{encodeKey(t){return qg(t)}encodeValue(t){return qg(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function qg(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class $g{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new zg,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const i=t.indexOf("="),[s,r]=-1==i?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,i)),e.decodeValue(t.slice(i+1))],o=n.get(s)||[];o.push(r),n.set(s,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const e=new $g({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function Ug(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function Gg(t){return"undefined"!=typeof Blob&&t instanceof Blob}function Wg(t){return"undefined"!=typeof FormData&&t instanceof FormData}class Zg{constructor(t,e,n,i){let s;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||i?(this.body=void 0!==n?n:null,s=i):s=n,s&&(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.params&&(this.params=s.params)),this.headers||(this.headers=new Hg),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),a)),t.setParams&&(l=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),l)),new Zg(e,n,s,{params:l,headers:a,reportProgress:o,responseType:i,withCredentials:r})}}var Qg=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}({});class Kg extends class{constructor(t,e=200,n="OK"){this.headers=t.headers||new Hg,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}{constructor(t={}){super(t),this.type=Qg.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new Kg({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}function Yg(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let Jg=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let i;if(t instanceof Zg)i=t;else{let s=void 0;s=n.headers instanceof Hg?n.headers:new Hg(n.headers);let r=void 0;n.params&&(r=n.params instanceof $g?n.params:new $g({fromObject:n.params})),i=new Zg(t,e,void 0!==n.body?n.body:null,{headers:s,params:r,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const s=eh(i).pipe(B(t=>this.handler.handle(t),void 0,1));if(t instanceof Zg||"events"===n.observe)return s;const r=s.pipe(gh(t=>t instanceof Kg));switch(n.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return r.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return r.pipe(F(t=>t.body))}case"response":return r;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new $g).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,Yg(n,e))}post(t,e,n={}){return this.request("POST",t,Yg(n,e))}put(t,e,n={}){return this.request("PUT",t,Yg(n,e))}}return t.\u0275fac=function(e){return new(e||t)(Wt(Bg))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Xg=["*"];function t_(t){return Error(`Unable to find icon with the name "${t}"`)}function e_(t){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${t}".`)}function n_(t){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${t}".`)}class i_{constructor(t,e){this.options=e,t.nodeName?this.svgElement=t:this.url=t}}let s_=(()=>{class t{constructor(t,e,n,i){this._httpClient=t,this._sanitizer=e,this._errorHandler=i,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._defaultFontSetClass="material-icons",this._document=n}addSvgIcon(t,e,n){return this.addSvgIconInNamespace("",t,e,n)}addSvgIconLiteral(t,e,n){return this.addSvgIconLiteralInNamespace("",t,e,n)}addSvgIconInNamespace(t,e,n,i){return this._addSvgIconConfig(t,e,new i_(n,i))}addSvgIconLiteralInNamespace(t,e,n,i){const s=this._sanitizer.sanitize($i.HTML,n);if(!s)throw n_(n);const r=this._createSvgElementForSingleIcon(s,i);return this._addSvgIconConfig(t,e,new i_(r,i))}addSvgIconSet(t,e){return this.addSvgIconSetInNamespace("",t,e)}addSvgIconSetLiteral(t,e){return this.addSvgIconSetLiteralInNamespace("",t,e)}addSvgIconSetInNamespace(t,e,n){return this._addSvgIconSetConfig(t,new i_(e,n))}addSvgIconSetLiteralInNamespace(t,e,n){const i=this._sanitizer.sanitize($i.HTML,e);if(!i)throw n_(e);const s=this._svgElementFromString(i);return this._addSvgIconSetConfig(t,new i_(s,n))}registerFontClassAlias(t,e=t){return this._fontCssClassesByAlias.set(t,e),this}classNameForFontAlias(t){return this._fontCssClassesByAlias.get(t)||t}setDefaultFontSetClass(t){return this._defaultFontSetClass=t,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(t){const e=this._sanitizer.sanitize($i.RESOURCE_URL,t);if(!e)throw e_(t);const n=this._cachedIconsByUrl.get(e);return n?eh(r_(n)):this._loadSvgIconFromConfig(new i_(t)).pipe(Zh(t=>this._cachedIconsByUrl.set(e,t)),F(t=>r_(t)))}getNamedSvgIcon(t,e=""){const n=o_(e,t),i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);const s=this._iconSetConfigs.get(e);return s?this._getSvgFromIconSetConfigs(t,s):(r=t_(n),new y(t=>t.error(r)));var r}ngOnDestroy(){this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(t){return t.svgElement?eh(r_(t.svgElement)):this._loadSvgIconFromConfig(t).pipe(Zh(e=>t.svgElement=e),F(t=>r_(t)))}_getSvgFromIconSetConfigs(t,e){const n=this._extractIconWithNameFromAnySet(t,e);return n?eh(n):um(e.filter(t=>!t.svgElement).map(t=>{return this._loadSvgIconSetFromConfig(t).pipe((e=e=>{const n=this._sanitizer.sanitize($i.RESOURCE_URL,t.url);return this._errorHandler.handleError(new Error(`Loading icon set URL: ${n} failed: ${e.message}`)),eh(null)},function(t){const n=new Vg(e),i=t.lift(n);return n.caught=i}));var e})).pipe(F(()=>{const n=this._extractIconWithNameFromAnySet(t,e);if(!n)throw t_(t);return n}))}_extractIconWithNameFromAnySet(t,e){for(let n=e.length-1;n>=0;n--){const i=e[n];if(i.svgElement){const e=this._extractSvgIconFromSet(i.svgElement,t,i.options);if(e)return e}}return null}_loadSvgIconFromConfig(t){return this._fetchIcon(t).pipe(F(e=>this._createSvgElementForSingleIcon(e,t.options)))}_loadSvgIconSetFromConfig(t){return t.svgElement?eh(t.svgElement):this._fetchIcon(t).pipe(F(e=>(t.svgElement||(t.svgElement=this._svgElementFromString(e)),t.svgElement)))}_createSvgElementForSingleIcon(t,e){const n=this._svgElementFromString(t);return this._setSvgAttributes(n,e),n}_extractSvgIconFromSet(t,e,n){const i=t.querySelector(`[id="${e}"]`);if(!i)return null;const s=i.cloneNode(!0);if(s.removeAttribute("id"),"svg"===s.nodeName.toLowerCase())return this._setSvgAttributes(s,n);if("symbol"===s.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(s),n);const r=this._svgElementFromString("");return r.appendChild(s),this._setSvgAttributes(r,n)}_svgElementFromString(t){const e=this._document.createElement("DIV");e.innerHTML=t;const n=e.querySelector("svg");if(!n)throw Error(" tag not found");return n}_toSvgElement(t){const e=this._svgElementFromString(""),n=t.attributes;for(let i=0;ithis._inProgressUrlFetches.delete(r),t=>t.lift(new Lg(l))),X());var l;return this._inProgressUrlFetches.set(r,a),a}_addSvgIconConfig(t,e,n){return this._svgIconConfigs.set(o_(t,e),n),this}_addSvgIconSetConfig(t,e){const n=this._iconSetConfigs.get(t);return n?n.push(e):this._iconSetConfigs.set(t,[e]),this}}return t.\u0275fac=function(e){return new(e||t)(Wt(Jg,8),Wt(Wc),Wt(ac,8),Wt(ci))},t.\u0275prov=ct({factory:function(){return new t(Wt(Jg,8),Wt(Wc),Wt(ac,8),Wt(ci))},token:t,providedIn:"root"}),t})();function r_(t){return t.cloneNode(!0)}function o_(t,e){return t+":"+e}class a_{constructor(t){this._elementRef=t}}const l_=xf(a_),c_=new Mt("mat-icon-location",{providedIn:"root",factory:function(){const t=Zt(ac),e=t?t.location:null;return{getPathname:()=>e?e.pathname+e.search:""}}}),h_=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],u_=h_.map(t=>`[${t}]`).join(", "),d_=/^url\(['"]?#(.*?)['"]?\)$/;let p_=(()=>{class t extends l_{constructor(t,e,n,i,s){super(t),this._iconRegistry=e,this._location=i,this._errorHandler=s,this._inline=!1,this._currentIconFetch=u.EMPTY,n||t.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(t){this._inline=Jc(t)}get fontSet(){return this._fontSet}set fontSet(t){this._fontSet=this._cleanupFontValue(t)}get fontIcon(){return this._fontIcon}set fontIcon(t){this._fontIcon=this._cleanupFontValue(t)}_splitIconName(t){if(!t)return["",""];const e=t.split(":");switch(e.length){case 1:return["",e[0]];case 2:return e;default:throw Error(`Invalid icon name: "${t}"`)}}ngOnChanges(t){const e=t.svgIcon;if(e)if(this._currentIconFetch.unsubscribe(),this.svgIcon){const[t,e]=this._splitIconName(this.svgIcon);this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(e,t).pipe($h(1)).subscribe(t=>this._setSvgElement(t),n=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${t}:${e}! ${n.message}`))})}else e.previousValue&&this._clearSvgElement();this._usingFontIcon()&&this._updateFontIconClasses()}ngOnInit(){this._usingFontIcon()&&this._updateFontIconClasses()}ngAfterViewChecked(){const t=this._elementsWithExternalReferences;if(t&&t.size){const t=this._location.getPathname();t!==this._previousPath&&(this._previousPath=t,this._prependPathToReferences(t))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(t){this._clearSvgElement();const e=t.querySelectorAll("style");for(let i=0;i{e.forEach(e=>{n.setAttribute(e.name,`url('${t}#${e.value}')`)})})}_cacheChildrenWithExternalReferences(t){const e=t.querySelectorAll(u_),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let i=0;i{const s=e[i],r=s.getAttribute(t),o=r?r.match(d_):null;if(o){let e=n.get(s);e||(e=[],n.set(s,e)),e.push({name:t,value:o[1]})}})}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(s_),("aria-hidden",function(t,e){const n=t.attrs;if(n){const t=n.length;let e=0;for(;e{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sf],Sf]}),t})(),m_=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sf],Sf]}),t})(),g_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["","mat-list-icon",""],["","matListIcon",""]],hostAttrs:[1,"mat-list-icon"]}),t})(),__=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[If,Df,Sf,Af,wc],If,Sf,Af,m_]}),t})();function y_(t,e){if(1&t&&(uo(0,"h3",7),Vo(1),po()),2&t){const t=Co();hs(1),Mo(t.itemsTitle)}}function b_(t,e){if(1&t){const t=_o();uo(0,"mat-form-field",8),uo(1,"mat-label"),Vo(2),po(),uo(3,"input",9),bo("ngModelChange",(function(e){return Je(t),Co().filterItems(e)})),po(),uo(4,"mat-placeholder"),Vo(5),po(),po()}if(2&t){const t=Co();hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,""),hs(1),co("ngModel",t.filterText),hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,"")}}function v_(t,e){if(1&t&&(uo(0,"mat-icon",12),Vo(1),po()),2&t){const t=Co(2);Do("color",t.addIconColor),hs(1),Mo(t.addIcon)}}function w_(t,e){if(1&t){const t=_o();uo(0,"div",10),bo("click",(function(e){return Je(t),Co().clickedItem(e.target.innerText,"confirmedFiltered","availableFiltered")})),ao(1,v_,2,3,"mat-icon",11),Vo(2),po()}if(2&t){const t=e.$implicit,n=Co();hs(1),co("ngIf",n.showIcons),hs(1),Lo(" ",t[n.display],"")}}function C_(t,e){if(1&t&&(uo(0,"h3",7),Vo(1),po()),2&t){const t=Co();hs(1),Mo(t.selectedItemsTitle)}}function E_(t,e){if(1&t){const t=_o();uo(0,"mat-form-field",8),uo(1,"mat-label"),Vo(2),po(),uo(3,"input",9),bo("ngModelChange",(function(e){return Je(t),Co().filterSelectedItems(e)})),po(),uo(4,"mat-placeholder"),Vo(5),po(),po()}if(2&t){const t=Co();hs(2),jo("",t.searchPlaceholder," ",t.selectedItemsTitle,""),hs(1),co("ngModel",t.filterSelectedText),hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,"")}}function S_(t,e){if(1&t&&(uo(0,"mat-icon",12),Vo(1),po()),2&t){const t=Co(2);Do("color",t.removeIconColor),hs(1),Mo(t.removeIcon)}}function x_(t,e){if(1&t){const t=_o();uo(0,"div",10),bo("click",(function(e){return Je(t),Co().clickedItem(e.target.innerText,"availableFiltered","confirmedFiltered")})),ao(1,S_,2,3,"mat-icon",11),Vo(2),po()}if(2&t){const t=e.$implicit,n=Co();hs(1),co("ngIf",n.showIcons),hs(1),Lo(" ",t[n.display],"")}}const k_=function(t,e){return{"max-height":"100%","max-width":t,"min-width":e}};let T_=(()=>{class t{constructor(){this.key="_id",this.display="name",this.width="360px",this.filter=!0,this.searchPlaceholder="Filter",this.itemsTitle="Items",this.selectedItemsTitle="Selected Items",this.header=!1,this.showIcons=!0,this.addIcon="add",this.addIconColor="black",this.removeIcon="delete",this.removeIconColor="black",this.source=[],this.destination=[],this.destinationChange=new Za,this.availableFiltered=[],this.confirmedFiltered=[],this.filterText=null,this.filterSelectedText=null}ngOnInit(){this.update()}update(){this.filterItems(this.filterText),this.filterSelectedItems(this.filterSelectedText)}drop(t){t.previousContainer===t.container?(gu(t.container.data,t.previousIndex,t.currentIndex),console.log(t)):(function(t,e,n,i){const s=_u(n,t.length-1),r=_u(i,e.length);t.length&&e.splice(r,0,t.splice(s,1)[0])}(t.previousContainer.data,t.container.data,t.previousIndex,t.currentIndex),this.destination=this.confirmedFiltered,this.destinationChange.emit(this.destination))}clickedItem(t,...e){this[e[0]]=[...this[e[1]].splice(this[e[1]].indexOf(t),1),...this[e[0]]],this.destination=this.confirmedFiltered,this.destinationChange.emit(this.destination)}filterItems(t){this.filterText=t,this.availableFiltered=t?this.source.filter(e=>e[this.display].toLowerCase().includes(t.toLowerCase())):this.source}filterSelectedItems(t){this.filterSelectedText=t,this.confirmedFiltered=t?this.destination.filter(e=>e[this.display].toLowerCase().includes(t.toLowerCase())):this.destination}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=ue({type:t,selectors:[["material-dual-listbox"]],inputs:{key:"key",display:"display",width:"width",filter:"filter",searchPlaceholder:"searchPlaceholder",itemsTitle:"itemsTitle",selectedItemsTitle:"selectedItemsTitle",header:"header",showIcons:"showIcons",addIcon:"addIcon",addIconColor:"addIconColor",removeIcon:"removeIcon",removeIconColor:"removeIconColor",source:"source",destination:"destination"},outputs:{destinationChange:"destinationChange"},decls:12,vars:12,consts:[[3,"ngStyle"],["cdkDropListGroup","",1,"rck-list-container"],[1,"rck-container"],["class","rck-title",4,"ngIf"],["appearance","standard",4,"ngIf"],["cdkDropList","",1,"rck-list",3,"cdkDropListData","cdkDropListDropped"],["class","rck-box","cdkDrag","",3,"click",4,"ngFor","ngForOf"],[1,"rck-title"],["appearance","standard"],["matInput","","autocomplete","off",3,"ngModel","ngModelChange"],["cdkDrag","",1,"rck-box",3,"click"],["fxHide.xs","","mat-list-icon","",3,"color",4,"ngIf"],["fxHide.xs","","mat-list-icon",""]],template:function(t,e){var n,i,s,r,o;1&t&&(uo(0,"div",0),uo(1,"div",1),uo(2,"div",2),ao(3,y_,2,1,"h3",3),ao(4,b_,6,5,"mat-form-field",4),uo(5,"div",5),bo("cdkDropListDropped",(function(t){return e.drop(t)})),ao(6,w_,3,2,"div",6),po(),po(),uo(7,"div",2),ao(8,C_,2,1,"h3",3),ao(9,E_,6,5,"mat-form-field",4),uo(10,"div",5),bo("cdkDropListDropped",(function(t){return e.drop(t)})),ao(11,x_,3,2,"div",6),po(),po(),po(),po()),2&t&&(co("ngStyle",(n=9,i=k_,s=e.width,r=e.width,function(t,e,n,i,s,r,o){const a=e+n;return ro(t,a,s,r)?function(t,e,n){return t[e]=n}(t,a+2,o?i.call(o,s,r):i(s,r)):function(t,e){const n=t[e];return n===rs?void 0:n}(t,a+2)}(Ke(),function(){const t=Ze.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}(),n,i,s,r,o))),hs(3),co("ngIf",e.header),hs(1),co("ngIf",e.filter),hs(1),co("cdkDropListData",e.availableFiltered),hs(1),co("ngForOf",e.availableFiltered),hs(2),co("ngIf",e.header),hs(1),co("ngIf",e.filter),hs(1),co("cdkDropListData",e.confirmedFiltered),hs(1),co("ngForOf",e.confirmedFiltered))},directives:[vc,Du,fc,Ru,dc,cm,tm,Ng,ym,Sm,Sg,em,Lu,p_,g_],styles:["./material-dual-listbox.component.scss",".rck-title[_ngcontent-%COMP%]{\n margin-bottom: 0px;\n }\n .rck-list-container[_ngcontent-%COMP%]{\n display: flex;\n flex-wrap: nowrap;\n }\n .rck-container[_ngcontent-%COMP%] {\n width: 180px;\n max-width: 100%;\n margin: 5px 5px 5px 5px;\n display: inline-block;\n vertical-align: top;\n }\n\n .rck-container[_ngcontent-%COMP%]:last-child{\n margin-right: 25px;\n }\n\n .rck-list[_ngcontent-%COMP%] {\n border: solid 1px #ccc;\n min-height: 60px;\n background: white;\n border-radius: 4px;\n overflow: hidden;\n display: block;\n }\n\n .rck-box[_ngcontent-%COMP%] {\n padding: 20px 20px;\n border-bottom: solid 1px #ccc;\n color: rgba(0, 0, 0, 0.87);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n box-sizing: border-box;\n cursor: move;\n background: white;\n font-size: 14px;\n }\n\n .cdk-drag-preview[_ngcontent-%COMP%] {\n box-sizing: border-box;\n border-radius: 4px;\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\n }\n\n .cdk-drag-placeholder[_ngcontent-%COMP%] {\n opacity: 0;\n }\n\n .cdk-drag-animating[_ngcontent-%COMP%] {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }\n\n .rck-box[_ngcontent-%COMP%]:last-child {\n border: none;\n }\n\n .rck-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .rck-box[_ngcontent-%COMP%]:not(.cdk-drag-placeholder) {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }"]}),t})(),I_=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Yc,f_,Fg,__,Ig,hm,Bu]]}),t})(),D_=(()=>{class t{constructor(){this.title="demo",this.source=[],this.destination=[],this.source=[{name:"one"},{name:"two"},{name:"tree"},{name:"four"}]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=ue({type:t,selectors:[["app-root"]],decls:1,vars:3,consts:[[3,"source","filter","destination","destinationChange"]],template:function(t,e){1&t&&(uo(0,"material-dual-listbox",0),bo("destinationChange",(function(t){return e.destination=t})),po()),2&t&&co("source",e.source)("filter",!0)("destination",e.destination)},directives:[T_],styles:[""]}),t})(),A_=(()=>{class t{}return t.\u0275mod=me({type:t,bootstrap:[D_]}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[],imports:[[Yc,I_,vf]]}),t})();(function(){if(vi)throw new Error("Cannot enable prod mode after platform setup.");bi=!1})(),Qc().bootstrapModule(A_).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}))}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/dist/demo/polyfills.9e86b32c42185429d576.js b/dist/demo/polyfills.9e86b32c42185429d576.js new file mode 100644 index 0000000..2d89e0b --- /dev/null +++ b/dist/demo/polyfills.9e86b32c42185429d576.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("nf2o")},nf2o:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,i,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:k,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let z={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return D.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState");function v(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const b=s("currentTaskTrace");function T(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[g]){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{T(e,!1,u)})(),e}if(!1!==o&&s instanceof D&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&null!==s[g])w(s),T(e,s[g],s[_]);else if(!1!==o&&"function"==typeof h)try{h.call(s,c(v(e,o)),c(v(e,!1)))}catch(u){c(()=>{T(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&!0===o&&(e[g]=e[y],e[_]=e[m]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,b,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const i=t.run(a,void 0,r&&a!==d&&a!==f?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}const S=function(){};class D{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)p(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return D.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof D?this:D).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){p(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}constructor(e){const t=this;if(!(t instanceof D))throw new Error("Must be an instanceof Promise.");t[g]=null,t[_]=[];try{e&&e(v(t,!0),v(t,!1))}catch(n){T(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return D}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||D);const r=new o(S),s=t.current;return null==this[g]?this[_].push(s,r,e,n):Z(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=D);const o=new n(S);o[k]=k;const r=t.current;return null==this[g]?this[_].push(r,o,e,e):Z(this,r,o,e,e),o}}D.resolve=D.resolve,D.reject=D.reject,D.race=D.race,D.all=D.all;const P=e[c]=e.Promise,C=t.__symbol__("ZoneAwarePromise");let O=o(e,"Promise");O&&!O.configurable||(O&&delete O.writable,O&&delete O.value,O||(O={configurable:!0,enumerable:!0}),O.get=function(){return e[C]?e[C]:e[c]},O.set=function(t){t===D?e[C]=t:(e[c]=t,t.prototype[l]||j(t),n.setNativePromise(t))},r(e,"Promise",O)),e.Promise=D;const z=s("thenPatched");function j(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new D((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=j,P){j(P);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(I=t,function(){let e=I.apply(this,arguments);if(e instanceof D)return e;let t=e.constructor;return t[z]||j(t),e}))}var I;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,D});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function _(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const k="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!k&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!k&&!(!h||!p.HTMLElement),b={},T=function(e){if(!(e=e||f.event))return;let t=b[e.type];t||(t=b[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=b[l];h||(h=b[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,T),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,T,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function C(e,t){e[u("OriginalDelegate")]=t}let O=!1,z=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(O)return z;O=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(z=!0)}catch(e){}return z}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ie){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t){const n=(t?t(e):e)+"false",o=(t?t(e):e)+"true",r=i+n,s=i+o;x[e]={},x[e].false=r,x[e].true=s}function F(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const W=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],U=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],V=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],X=["bounce","finish","start"],J=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],K=["close","error","open","message"],Q=["error","message"],ee=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],W,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function te(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ne(e,t,n,o){e&&w(e,te(e,t,n),o)}function oe(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];ne(e,ee.concat(["messageerror"]),r?r.concat(t):r,n(e)),ne(Document.prototype,ee,r),void 0!==e.SVGElement&&ne(e.SVGElement.prototype,ee,r),ne(Element.prototype,ee,r),ne(HTMLElement.prototype,ee,r),ne(HTMLMediaElement.prototype,U,r),ne(HTMLFrameSetElement.prototype,W.concat($),r),ne(HTMLBodyElement.prototype,W.concat($),r),ne(HTMLFrameElement.prototype,V,r),ne(HTMLIFrameElement.prototype,V,r);const o=e.HTMLMarqueeElement;o&&ne(o.prototype,X,r);const s=e.Worker;s&&ne(s.prototype,Q,r)}const s=t.XMLHttpRequest;s&&ne(s.prototype,J,r);const a=t.XMLHttpRequestEventTarget;a&&ne(a&&a.prototype,J,r),"undefined"!=typeof IDBIndex&&(ne(IDBIndex.prototype,Y,r),ne(IDBRequest.prototype,Y,r),ne(IDBOpenDBRequest.prototype,Y,r),ne(IDBDatabase.prototype,Y,r),ne(IDBTransaction.prototype,Y,r),ne(IDBCursor.prototype,Y,r)),o&&ne(WebSocket.prototype,K,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=B,a.patchEventTarget=F,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=te,a.attachOriginToPatched=C,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:ee,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const re=u("zoneTask");function se(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[re]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[re]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[re],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[re]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ae(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{se(e,"set","clear","Timeout"),se(e,"set","clear","Interval"),se(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{se(e,"request","cancel","AnimationFrame"),se(e,"mozRequest","mozCancel","AnimationFrame"),se(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),ae(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{oe(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function _(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),b=u("fetchTaskScheduling"),T=D(f,"send",()=>function(e,n){if(!0===t.current[b])return T.apply(e,n);if(e[o])return T.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",k,t,_,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return C(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){G(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); \ No newline at end of file diff --git a/dist/demo/runtime.e227d1a0e31cbccbf8ec.js b/dist/demo/runtime.e227d1a0e31cbccbf8ec.js new file mode 100644 index 0000000..effa6ae --- /dev/null +++ b/dist/demo/runtime.e227d1a0e31cbccbf8ec.js @@ -0,0 +1 @@ +!function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];c.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.mat-form-field-disabled .mat-date-range-input-separator{color:rgba(0,0,0,.38)}.cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){background-color:rgba(0,0,0,.04)}.mat-calendar-body-in-preview{color:rgba(0,0,0,.24)}.mat-calendar-body-today:not(.mat-calendar-body-selected){border-color:rgba(0,0,0,.38)}.mat-calendar-body-disabled>.mat-calendar-body-today:not(.mat-calendar-body-selected){border-color:rgba(0,0,0,.18)}.mat-calendar-body-in-range:before{background:rgba(103,58,183,.2)}.mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-calendar-body-comparison-bridge-start:before,[dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(90deg,rgba(103,58,183,.2) 50%,rgba(249,171,0,.2) 0)}.mat-calendar-body-comparison-bridge-end:before,[dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(270deg,rgba(103,58,183,.2) 50%,rgba(249,171,0,.2) 0)}.mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-calendar-body-selected{background-color:#673ab7;color:#fff}.mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:rgba(103,58,183,.4)}.mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);background-color:#fff;color:rgba(0,0,0,.87)}.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background:rgba(255,215,64,.2)}.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-start:before,.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(90deg,rgba(255,215,64,.2) 50%,rgba(249,171,0,.2) 0)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-end:before,.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(270deg,rgba(255,215,64,.2) 50%,rgba(249,171,0,.2) 0)}.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-datepicker-content.mat-accent .mat-calendar-body-selected{background-color:#ffd740;color:rgba(0,0,0,.87)}.mat-datepicker-content.mat-accent .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:rgba(255,215,64,.4)}.mat-datepicker-content.mat-accent .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px rgba(0,0,0,.87)}.mat-datepicker-content.mat-warn .mat-calendar-body-in-range:before{background:rgba(244,67,54,.2)}.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-start:before,.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(90deg,rgba(244,67,54,.2) 50%,rgba(249,171,0,.2) 0)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-end:before,.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(270deg,rgba(244,67,54,.2) 50%,rgba(249,171,0,.2) 0)}.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-datepicker-content.mat-warn .mat-calendar-body-selected{background-color:#f44336;color:#fff}.mat-datepicker-content.mat-warn .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:rgba(244,67,54,.4)}.mat-datepicker-content.mat-warn .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content-touch{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.mat-datepicker-toggle-active{color:#673ab7}.mat-datepicker-toggle-active.mat-accent{color:#ffd740}.mat-datepicker-toggle-active.mat-warn{color:#f44336}.mat-date-range-input-inner[disabled]{color:rgba(0,0,0,.38)}.mat-dialog-container{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background:#fff;color:rgba(0,0,0,.87)}.mat-divider{border-top-color:rgba(0,0,0,.12)}.mat-divider-vertical{border-right-color:rgba(0,0,0,.12)}.mat-expansion-panel{background:#fff;color:rgba(0,0,0,.87)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.mat-action-row{border-top-color:rgba(0,0,0,.12)}.mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true]),.mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true]),.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true]){background:rgba(0,0,0,.04)}@media(hover:none){.mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background:#fff}}.mat-expansion-panel-header-title{color:rgba(0,0,0,.87)}.mat-expansion-indicator:after,.mat-expansion-panel-header-description{color:rgba(0,0,0,.54)}.mat-expansion-panel-header[aria-disabled=true]{color:rgba(0,0,0,.26)}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title{color:inherit}.mat-expansion-panel-header{height:48px}.mat-expansion-panel-header.mat-expanded{height:64px}.mat-form-field-label,.mat-hint{color:rgba(0,0,0,.6)}.mat-form-field.mat-focused .mat-form-field-label{color:#673ab7}.mat-form-field.mat-focused .mat-form-field-label.mat-accent{color:#ffd740}.mat-form-field.mat-focused .mat-form-field-label.mat-warn{color:#f44336}.mat-focused .mat-form-field-required-marker{color:#ffd740}.mat-form-field-ripple{background-color:rgba(0,0,0,.87)}.mat-form-field.mat-focused .mat-form-field-ripple{background-color:#673ab7}.mat-form-field.mat-focused .mat-form-field-ripple.mat-accent{background-color:#ffd740}.mat-form-field.mat-focused .mat-form-field-ripple.mat-warn{background-color:#f44336}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid) .mat-form-field-infix:after{color:#673ab7}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-accent .mat-form-field-infix:after{color:#ffd740}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-warn .mat-form-field-infix:after,.mat-form-field.mat-form-field-invalid .mat-form-field-label,.mat-form-field.mat-form-field-invalid .mat-form-field-label.mat-accent,.mat-form-field.mat-form-field-invalid .mat-form-field-label .mat-form-field-required-marker{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-ripple,.mat-form-field.mat-form-field-invalid .mat-form-field-ripple.mat-accent{background-color:#f44336}.mat-error{color:#f44336}.mat-form-field-appearance-legacy .mat-form-field-label,.mat-form-field-appearance-legacy .mat-hint{color:rgba(0,0,0,.54)}.mat-form-field-appearance-legacy .mat-form-field-underline{background-color:rgba(0,0,0,.42)}.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(90deg,rgba(0,0,0,.42) 0,rgba(0,0,0,.42) 33%,transparent 0);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-standard .mat-form-field-underline{background-color:rgba(0,0,0,.42)}.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(90deg,rgba(0,0,0,.42) 0,rgba(0,0,0,.42) 33%,transparent 0);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-fill .mat-form-field-flex{background-color:rgba(0,0,0,.04)}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-flex{background-color:rgba(0,0,0,.02)}.mat-form-field-appearance-fill .mat-form-field-underline:before{background-color:rgba(0,0,0,.42)}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-label{color:rgba(0,0,0,.38)}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-underline:before{background-color:transparent}.mat-form-field-appearance-outline .mat-form-field-outline{color:rgba(0,0,0,.12)}.mat-form-field-appearance-outline .mat-form-field-outline-thick{color:rgba(0,0,0,.87)}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick{color:#673ab7}.mat-form-field-appearance-outline.mat-focused.mat-accent .mat-form-field-outline-thick{color:#ffd740}.mat-form-field-appearance-outline.mat-focused.mat-warn .mat-form-field-outline-thick,.mat-form-field-appearance-outline.mat-form-field-invalid.mat-form-field-invalid .mat-form-field-outline-thick{color:#f44336}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-label{color:rgba(0,0,0,.38)}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{color:rgba(0,0,0,.06)}.mat-icon.mat-primary{color:#673ab7}.mat-icon.mat-accent{color:#ffd740}.mat-icon.mat-warn{color:#f44336}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{color:rgba(0,0,0,.54)}.mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix:after,.mat-input-element:disabled{color:rgba(0,0,0,.38)}.mat-input-element{caret-color:#673ab7}.mat-input-element::-ms-input-placeholder{color:rgba(0,0,0,.42)}.mat-input-element::placeholder{color:rgba(0,0,0,.42)}.mat-input-element::-moz-placeholder{color:rgba(0,0,0,.42)}.mat-input-element::-webkit-input-placeholder{color:rgba(0,0,0,.42)}.mat-input-element:-ms-input-placeholder{color:rgba(0,0,0,.42)}.mat-form-field.mat-accent .mat-input-element{caret-color:#ffd740}.mat-form-field-invalid .mat-input-element,.mat-form-field.mat-warn .mat-input-element{caret-color:#f44336}.mat-form-field-type-mat-native-select.mat-form-field-invalid .mat-form-field-infix:after{color:#f44336}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{color:rgba(0,0,0,.87)}.mat-list-base .mat-subheader{color:rgba(0,0,0,.54)}.mat-list-item-disabled{background-color:#eee}.mat-action-list .mat-list-item:focus,.mat-action-list .mat-list-item:hover,.mat-list-option:focus,.mat-list-option:hover,.mat-nav-list .mat-list-item:focus,.mat-nav-list .mat-list-item:hover{background:rgba(0,0,0,.04)}.mat-list-single-selected-option,.mat-list-single-selected-option:focus,.mat-list-single-selected-option:hover{background:rgba(0,0,0,.12)}.mat-menu-panel{background:#fff}.mat-menu-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.mat-menu-item{background:transparent;color:rgba(0,0,0,.87)}.mat-menu-item[disabled],.mat-menu-item[disabled]:after{color:rgba(0,0,0,.38)}.mat-menu-item-submenu-trigger:after,.mat-menu-item .mat-icon-no-color{color:rgba(0,0,0,.54)}.mat-menu-item-highlighted:not([disabled]),.mat-menu-item.cdk-keyboard-focused:not([disabled]),.mat-menu-item.cdk-program-focused:not([disabled]),.mat-menu-item:hover:not([disabled]){background:rgba(0,0,0,.04)}.mat-paginator{background:#fff}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{color:rgba(0,0,0,.54)}.mat-paginator-decrement,.mat-paginator-increment{border-top:2px solid rgba(0,0,0,.54);border-right:2px solid rgba(0,0,0,.54)}.mat-paginator-first,.mat-paginator-last{border-top:2px solid rgba(0,0,0,.54)}.mat-icon-button[disabled] .mat-paginator-decrement,.mat-icon-button[disabled] .mat-paginator-first,.mat-icon-button[disabled] .mat-paginator-increment,.mat-icon-button[disabled] .mat-paginator-last{border-color:rgba(0,0,0,.38)}.mat-paginator-container{min-height:56px}.mat-progress-bar-background{fill:#d1c4e9}.mat-progress-bar-buffer{background-color:#d1c4e9}.mat-progress-bar-fill:after{background-color:#673ab7}.mat-progress-bar.mat-accent .mat-progress-bar-background{fill:#ffe57f}.mat-progress-bar.mat-accent .mat-progress-bar-buffer{background-color:#ffe57f}.mat-progress-bar.mat-accent .mat-progress-bar-fill:after{background-color:#ffd740}.mat-progress-bar.mat-warn .mat-progress-bar-background{fill:#ffcdd2}.mat-progress-bar.mat-warn .mat-progress-bar-buffer{background-color:#ffcdd2}.mat-progress-bar.mat-warn .mat-progress-bar-fill:after{background-color:#f44336}.mat-progress-spinner circle,.mat-spinner circle{stroke:#673ab7}.mat-progress-spinner.mat-accent circle,.mat-spinner.mat-accent circle{stroke:#ffd740}.mat-progress-spinner.mat-warn circle,.mat-spinner.mat-warn circle{stroke:#f44336}.mat-radio-outer-circle{border-color:rgba(0,0,0,.54)}.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-outer-circle{border-color:#673ab7}.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-primary .mat-radio-inner-circle,.mat-radio-button.mat-primary .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-primary:active .mat-radio-persistent-ripple{background-color:#673ab7}.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ffd740}.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-accent .mat-radio-inner-circle,.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-accent:active .mat-radio-persistent-ripple{background-color:#ffd740}.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-outer-circle{border-color:#f44336}.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-warn .mat-radio-inner-circle,.mat-radio-button.mat-warn .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-warn:active .mat-radio-persistent-ripple{background-color:#f44336}.mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-outer-circle,.mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:rgba(0,0,0,.38)}.mat-radio-button.mat-radio-disabled .mat-radio-inner-circle,.mat-radio-button.mat-radio-disabled .mat-radio-ripple .mat-ripple-element{background-color:rgba(0,0,0,.38)}.mat-radio-button.mat-radio-disabled .mat-radio-label-content{color:rgba(0,0,0,.38)}.mat-radio-button .mat-ripple-element{background-color:#000}.mat-select-value{color:rgba(0,0,0,.87)}.mat-select-placeholder{color:rgba(0,0,0,.42)}.mat-select-disabled .mat-select-value{color:rgba(0,0,0,.38)}.mat-select-arrow{color:rgba(0,0,0,.54)}.mat-select-panel{background:#fff}.mat-select-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple){background:rgba(0,0,0,.12)}.mat-form-field.mat-focused.mat-primary .mat-select-arrow{color:#673ab7}.mat-form-field.mat-focused.mat-accent .mat-select-arrow{color:#ffd740}.mat-form-field.mat-focused.mat-warn .mat-select-arrow,.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow{color:#f44336}.mat-form-field .mat-select.mat-select-disabled .mat-select-arrow{color:rgba(0,0,0,.38)}.mat-drawer-container{background-color:#fafafa;color:rgba(0,0,0,.87)}.mat-drawer{color:rgba(0,0,0,.87)}.mat-drawer,.mat-drawer.mat-drawer-push{background-color:#fff}.mat-drawer:not(.mat-drawer-side){box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.mat-drawer-side{border-right:1px solid rgba(0,0,0,.12)}.mat-drawer-side.mat-drawer-end,[dir=rtl] .mat-drawer-side{border-left:1px solid rgba(0,0,0,.12);border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-left:none;border-right:1px solid rgba(0,0,0,.12)}.mat-drawer-backdrop.mat-drawer-shown{background-color:rgba(0,0,0,.6)}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background-color:#ffd740}.mat-slide-toggle.mat-checked .mat-slide-toggle-bar{background-color:rgba(255,215,64,.54)}.mat-slide-toggle.mat-checked .mat-ripple-element{background-color:#ffd740}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-thumb{background-color:#673ab7}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-bar{background-color:rgba(103,58,183,.54)}.mat-slide-toggle.mat-primary.mat-checked .mat-ripple-element{background-color:#673ab7}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-thumb{background-color:#f44336}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-bar{background-color:rgba(244,67,54,.54)}.mat-slide-toggle.mat-warn.mat-checked .mat-ripple-element{background-color:#f44336}.mat-slide-toggle:not(.mat-checked) .mat-ripple-element{background-color:#000}.mat-slide-toggle-thumb{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);background-color:#fafafa}.mat-slide-toggle-bar{background-color:rgba(0,0,0,.38)}.mat-slider-track-background{background-color:rgba(0,0,0,.26)}.mat-primary .mat-slider-thumb,.mat-primary .mat-slider-thumb-label,.mat-primary .mat-slider-track-fill{background-color:#673ab7}.mat-primary .mat-slider-thumb-label-text{color:#fff}.mat-primary .mat-slider-focus-ring{background-color:rgba(103,58,183,.2)}.mat-accent .mat-slider-thumb,.mat-accent .mat-slider-thumb-label,.mat-accent .mat-slider-track-fill{background-color:#ffd740}.mat-accent .mat-slider-thumb-label-text{color:rgba(0,0,0,.87)}.mat-accent .mat-slider-focus-ring{background-color:rgba(255,215,64,.2)}.mat-warn .mat-slider-thumb,.mat-warn .mat-slider-thumb-label,.mat-warn .mat-slider-track-fill{background-color:#f44336}.mat-warn .mat-slider-thumb-label-text{color:#fff}.mat-warn .mat-slider-focus-ring{background-color:rgba(244,67,54,.2)}.cdk-focused .mat-slider-track-background,.mat-slider:hover .mat-slider-track-background{background-color:rgba(0,0,0,.38)}.mat-slider-disabled .mat-slider-thumb,.mat-slider-disabled .mat-slider-track-background,.mat-slider-disabled .mat-slider-track-fill,.mat-slider-disabled:hover .mat-slider-track-background{background-color:rgba(0,0,0,.26)}.mat-slider-min-value .mat-slider-focus-ring{background-color:rgba(0,0,0,.12)}.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb,.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb-label{background-color:rgba(0,0,0,.87)}.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb,.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb-label{background-color:rgba(0,0,0,.26)}.mat-slider-min-value:not(.mat-slider-thumb-label-showing) .mat-slider-thumb{border-color:rgba(0,0,0,.26);background-color:transparent}.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused .mat-slider-thumb,.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover .mat-slider-thumb{border-color:rgba(0,0,0,.38)}.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused.mat-slider-disabled .mat-slider-thumb,.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover.mat-slider-disabled .mat-slider-thumb{border-color:rgba(0,0,0,.26)}.mat-slider-has-ticks .mat-slider-wrapper:after{border-color:rgba(0,0,0,.7)}.mat-slider-horizontal .mat-slider-ticks{background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent);background-image:-moz-repeating-linear-gradient(.0001deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-slider-vertical .mat-slider-ticks{background-image:repeating-linear-gradient(180deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused,.mat-step-header:hover{background-color:rgba(0,0,0,.04)}@media(hover:none){.mat-step-header:hover{background:none}}.mat-step-header .mat-step-label,.mat-step-header .mat-step-optional{color:rgba(0,0,0,.54)}.mat-step-header .mat-step-icon{background-color:rgba(0,0,0,.54);color:#fff}.mat-step-header .mat-step-icon-selected,.mat-step-header .mat-step-icon-state-done,.mat-step-header .mat-step-icon-state-edit{background-color:#673ab7;color:#fff}.mat-step-header .mat-step-icon-state-error{background-color:transparent;color:#f44336}.mat-step-header .mat-step-label.mat-step-label-active{color:rgba(0,0,0,.87)}.mat-step-header .mat-step-label.mat-step-label-error{color:#f44336}.mat-stepper-horizontal,.mat-stepper-vertical{background-color:#fff}.mat-stepper-vertical-line:before{border-left-color:rgba(0,0,0,.12)}.mat-horizontal-stepper-header:after,.mat-horizontal-stepper-header:before,.mat-stepper-horizontal-line{border-top-color:rgba(0,0,0,.12)}.mat-horizontal-stepper-header{height:72px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header,.mat-vertical-stepper-header{padding:24px}.mat-stepper-vertical-line:before{top:-16px;bottom:-16px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:after,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:before,.mat-stepper-label-position-bottom .mat-stepper-horizontal-line{top:36px}.mat-sort-header-arrow{color:#757575}.mat-tab-header,.mat-tab-nav-bar{border-bottom:1px solid rgba(0,0,0,.12)}.mat-tab-group-inverted-header .mat-tab-header,.mat-tab-group-inverted-header .mat-tab-nav-bar{border-top:1px solid rgba(0,0,0,.12);border-bottom:none}.mat-tab-label,.mat-tab-link{color:rgba(0,0,0,.87)}.mat-tab-label.mat-tab-disabled,.mat-tab-link.mat-tab-disabled{color:rgba(0,0,0,.38)}.mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,.87)}.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,.38)}.mat-tab-group[class*=mat-background-] .mat-tab-header,.mat-tab-nav-bar[class*=mat-background-]{border-bottom:none;border-top:none}.mat-tab-group.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(209,196,233,.3)}.mat-tab-group.mat-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary .mat-ink-bar{background-color:#673ab7}.mat-tab-group.mat-primary.mat-background-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(255,229,127,.3)}.mat-tab-group.mat-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent .mat-ink-bar{background-color:#ffd740}.mat-tab-group.mat-accent.mat-background-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent .mat-ink-bar{background-color:rgba(0,0,0,.87)}.mat-tab-group.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(255,205,210,.3)}.mat-tab-group.mat-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn .mat-ink-bar{background-color:#f44336}.mat-tab-group.mat-warn.mat-background-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(209,196,233,.3)}.mat-tab-group.mat-background-primary .mat-tab-header,.mat-tab-group.mat-background-primary .mat-tab-header-pagination,.mat-tab-group.mat-background-primary .mat-tab-links,.mat-tab-nav-bar.mat-background-primary .mat-tab-header,.mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-primary .mat-tab-links{background-color:#673ab7}.mat-tab-group.mat-background-primary .mat-tab-label,.mat-tab-group.mat-background-primary .mat-tab-link,.mat-tab-nav-bar.mat-background-primary .mat-tab-label,.mat-tab-nav-bar.mat-background-primary .mat-tab-link{color:#fff}.mat-tab-group.mat-background-primary .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-primary .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary .mat-tab-link.mat-tab-disabled{color:hsla(0,0%,100%,.4)}.mat-tab-group.mat-background-primary .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination-chevron{border-color:#fff}.mat-tab-group.mat-background-primary .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:hsla(0,0%,100%,.4)}.mat-tab-group.mat-background-primary .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary .mat-ripple-element{background-color:hsla(0,0%,100%,.12)}.mat-tab-group.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(255,229,127,.3)}.mat-tab-group.mat-background-accent .mat-tab-header,.mat-tab-group.mat-background-accent .mat-tab-header-pagination,.mat-tab-group.mat-background-accent .mat-tab-links,.mat-tab-nav-bar.mat-background-accent .mat-tab-header,.mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-accent .mat-tab-links{background-color:#ffd740}.mat-tab-group.mat-background-accent .mat-tab-label,.mat-tab-group.mat-background-accent .mat-tab-link,.mat-tab-nav-bar.mat-background-accent .mat-tab-label,.mat-tab-nav-bar.mat-background-accent .mat-tab-link{color:rgba(0,0,0,.87)}.mat-tab-group.mat-background-accent .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-accent .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent .mat-tab-link.mat-tab-disabled{color:rgba(0,0,0,.4)}.mat-tab-group.mat-background-accent .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,.87)}.mat-tab-group.mat-background-accent .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,.4)}.mat-tab-group.mat-background-accent .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent .mat-ripple-element{background-color:rgba(0,0,0,.12)}.mat-tab-group.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(255,205,210,.3)}.mat-tab-group.mat-background-warn .mat-tab-header,.mat-tab-group.mat-background-warn .mat-tab-header-pagination,.mat-tab-group.mat-background-warn .mat-tab-links,.mat-tab-nav-bar.mat-background-warn .mat-tab-header,.mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-warn .mat-tab-links{background-color:#f44336}.mat-tab-group.mat-background-warn .mat-tab-label,.mat-tab-group.mat-background-warn .mat-tab-link,.mat-tab-nav-bar.mat-background-warn .mat-tab-label,.mat-tab-nav-bar.mat-background-warn .mat-tab-link{color:#fff}.mat-tab-group.mat-background-warn .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-warn .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn .mat-tab-link.mat-tab-disabled{color:hsla(0,0%,100%,.4)}.mat-tab-group.mat-background-warn .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination-chevron{border-color:#fff}.mat-tab-group.mat-background-warn .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:hsla(0,0%,100%,.4)}.mat-tab-group.mat-background-warn .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn .mat-ripple-element{background-color:hsla(0,0%,100%,.12)}.mat-toolbar{background:#f5f5f5;color:rgba(0,0,0,.87)}.mat-toolbar.mat-primary{background:#673ab7;color:#fff}.mat-toolbar.mat-accent{background:#ffd740;color:rgba(0,0,0,.87)}.mat-toolbar.mat-warn{background:#f44336;color:#fff}.mat-toolbar .mat-focused .mat-form-field-ripple,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-form-field-underline{background-color:currentColor}.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-select-value{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar-multiple-rows{min-height:64px}.mat-toolbar-row,.mat-toolbar-single-row{height:64px}@media(max-width:599px){.mat-toolbar-multiple-rows{min-height:56px}.mat-toolbar-row,.mat-toolbar-single-row{height:56px}}.mat-tooltip{background:rgba(97,97,97,.9)}.mat-tree{background:#fff}.mat-nested-tree-node,.mat-tree-node{color:rgba(0,0,0,.87)}.mat-tree-node{min-height:48px}.mat-snack-bar-container{color:hsla(0,0%,100%,.7);background:#323232;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mat-simple-snackbar-action{color:#ffd740}body,html{height:100%}body{margin:0;font-family:Roboto,Helvetica Neue,sans-serif} \ No newline at end of file diff --git a/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js b/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js new file mode 100644 index 0000000..d5e62f2 --- /dev/null +++ b/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js @@ -0,0 +1,346 @@ +import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core'; +import { moveItemInArray, transferArrayItem, DragDropModule } from '@angular/cdk/drag-drop'; +import { BrowserModule } from '@angular/platform-browser'; +import { MatInputModule } from '@angular/material/input'; +import { MatIconModule } from '@angular/material/icon'; +import { MatListModule } from '@angular/material/list'; +import { FormsModule } from '@angular/forms'; +import { MatFormFieldModule } from '@angular/material/form-field'; + +import * as ɵngcc0 from '@angular/core'; +import * as ɵngcc1 from '@angular/common'; +import * as ɵngcc2 from '@angular/cdk/drag-drop'; +import * as ɵngcc3 from '@angular/material/form-field'; +import * as ɵngcc4 from '@angular/material/input'; +import * as ɵngcc5 from '@angular/forms'; +import * as ɵngcc6 from '@angular/material/icon'; +import * as ɵngcc7 from '@angular/material/list'; + +function MaterialDualListboxComponent_h3_3_Template(rf, ctx) { if (rf & 1) { + ɵngcc0.ɵɵelementStart(0, "h3", 7); + ɵngcc0.ɵɵtext(1); + ɵngcc0.ɵɵelementEnd(); +} if (rf & 2) { + const ctx_r0 = ɵngcc0.ɵɵnextContext(); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵtextInterpolate(ctx_r0.itemsTitle); +} } +function MaterialDualListboxComponent_mat_form_field_4_Template(rf, ctx) { if (rf & 1) { + const _r7 = ɵngcc0.ɵɵgetCurrentView(); + ɵngcc0.ɵɵelementStart(0, "mat-form-field", 8); + ɵngcc0.ɵɵelementStart(1, "mat-label"); + ɵngcc0.ɵɵtext(2); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementStart(3, "input", 9); + ɵngcc0.ɵɵlistener("ngModelChange", function MaterialDualListboxComponent_mat_form_field_4_Template_input_ngModelChange_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r7); const ctx_r6 = ɵngcc0.ɵɵnextContext(); return ctx_r6.filterItems($event); }); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementStart(4, "mat-placeholder"); + ɵngcc0.ɵɵtext(5); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementEnd(); +} if (rf & 2) { + const ctx_r1 = ɵngcc0.ɵɵnextContext(); + ɵngcc0.ɵɵadvance(2); + ɵngcc0.ɵɵtextInterpolate2("", ctx_r1.searchPlaceholder, " ", ctx_r1.itemsTitle, ""); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("ngModel", ctx_r1.filterText); + ɵngcc0.ɵɵadvance(2); + ɵngcc0.ɵɵtextInterpolate2("", ctx_r1.searchPlaceholder, " ", ctx_r1.itemsTitle, ""); +} } +function MaterialDualListboxComponent_div_6_mat_icon_1_Template(rf, ctx) { if (rf & 1) { + ɵngcc0.ɵɵelementStart(0, "mat-icon", 12); + ɵngcc0.ɵɵtext(1); + ɵngcc0.ɵɵelementEnd(); +} if (rf & 2) { + const ctx_r9 = ɵngcc0.ɵɵnextContext(2); + ɵngcc0.ɵɵstyleProp("color", ctx_r9.addIconColor); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵtextInterpolate(ctx_r9.addIcon); +} } +function MaterialDualListboxComponent_div_6_Template(rf, ctx) { if (rf & 1) { + const _r11 = ɵngcc0.ɵɵgetCurrentView(); + ɵngcc0.ɵɵelementStart(0, "div", 10); + ɵngcc0.ɵɵlistener("click", function MaterialDualListboxComponent_div_6_Template_div_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r11); const ctx_r10 = ɵngcc0.ɵɵnextContext(); return ctx_r10.clickedItem($event.target.innerText, "confirmedFiltered", "availableFiltered"); }); + ɵngcc0.ɵɵtemplate(1, MaterialDualListboxComponent_div_6_mat_icon_1_Template, 2, 3, "mat-icon", 11); + ɵngcc0.ɵɵtext(2); + ɵngcc0.ɵɵelementEnd(); +} if (rf & 2) { + const item_r8 = ctx.$implicit; + const ctx_r2 = ɵngcc0.ɵɵnextContext(); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("ngIf", ctx_r2.showIcons); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵtextInterpolate1(" ", item_r8[ctx_r2.display], ""); +} } +function MaterialDualListboxComponent_h3_8_Template(rf, ctx) { if (rf & 1) { + ɵngcc0.ɵɵelementStart(0, "h3", 7); + ɵngcc0.ɵɵtext(1); + ɵngcc0.ɵɵelementEnd(); +} if (rf & 2) { + const ctx_r3 = ɵngcc0.ɵɵnextContext(); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵtextInterpolate(ctx_r3.selectedItemsTitle); +} } +function MaterialDualListboxComponent_mat_form_field_9_Template(rf, ctx) { if (rf & 1) { + const _r13 = ɵngcc0.ɵɵgetCurrentView(); + ɵngcc0.ɵɵelementStart(0, "mat-form-field", 8); + ɵngcc0.ɵɵelementStart(1, "mat-label"); + ɵngcc0.ɵɵtext(2); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementStart(3, "input", 9); + ɵngcc0.ɵɵlistener("ngModelChange", function MaterialDualListboxComponent_mat_form_field_9_Template_input_ngModelChange_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r13); const ctx_r12 = ɵngcc0.ɵɵnextContext(); return ctx_r12.filterSelectedItems($event); }); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementStart(4, "mat-placeholder"); + ɵngcc0.ɵɵtext(5); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementEnd(); +} if (rf & 2) { + const ctx_r4 = ɵngcc0.ɵɵnextContext(); + ɵngcc0.ɵɵadvance(2); + ɵngcc0.ɵɵtextInterpolate2("", ctx_r4.searchPlaceholder, " ", ctx_r4.selectedItemsTitle, ""); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("ngModel", ctx_r4.filterSelectedText); + ɵngcc0.ɵɵadvance(2); + ɵngcc0.ɵɵtextInterpolate2("", ctx_r4.searchPlaceholder, " ", ctx_r4.itemsTitle, ""); +} } +function MaterialDualListboxComponent_div_11_mat_icon_1_Template(rf, ctx) { if (rf & 1) { + ɵngcc0.ɵɵelementStart(0, "mat-icon", 12); + ɵngcc0.ɵɵtext(1); + ɵngcc0.ɵɵelementEnd(); +} if (rf & 2) { + const ctx_r15 = ɵngcc0.ɵɵnextContext(2); + ɵngcc0.ɵɵstyleProp("color", ctx_r15.removeIconColor); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵtextInterpolate(ctx_r15.removeIcon); +} } +function MaterialDualListboxComponent_div_11_Template(rf, ctx) { if (rf & 1) { + const _r17 = ɵngcc0.ɵɵgetCurrentView(); + ɵngcc0.ɵɵelementStart(0, "div", 10); + ɵngcc0.ɵɵlistener("click", function MaterialDualListboxComponent_div_11_Template_div_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r17); const ctx_r16 = ɵngcc0.ɵɵnextContext(); return ctx_r16.clickedItem($event.target.innerText, "availableFiltered", "confirmedFiltered"); }); + ɵngcc0.ɵɵtemplate(1, MaterialDualListboxComponent_div_11_mat_icon_1_Template, 2, 3, "mat-icon", 11); + ɵngcc0.ɵɵtext(2); + ɵngcc0.ɵɵelementEnd(); +} if (rf & 2) { + const item_r14 = ctx.$implicit; + const ctx_r5 = ɵngcc0.ɵɵnextContext(); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("ngIf", ctx_r5.showIcons); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵtextInterpolate1(" ", item_r14[ctx_r5.display], ""); +} } +const _c0 = function (a1, a2) { return { "max-height": "100%", "max-width": a1, "min-width": a2 }; }; +class MaterialDualListboxComponent { + constructor() { + this.key = '_id'; + this.display = 'name'; + this.width = '360px'; + this.filter = true; + this.searchPlaceholder = 'Filter'; + this.itemsTitle = 'Items'; + this.selectedItemsTitle = 'Selected Items'; + this.header = false; + this.showIcons = true; + this.addIcon = 'add'; + this.addIconColor = 'black'; + this.removeIcon = 'delete'; + this.removeIconColor = 'black'; + this.source = []; + this.destination = []; + this.destinationChange = new EventEmitter(); + this.availableFiltered = []; + this.confirmedFiltered = []; + this.filterText = null; + this.filterSelectedText = null; + } + ngOnInit() { + this.update(); + } + update() { + this.filterItems(this.filterText); + this.filterSelectedItems(this.filterSelectedText); + } + drop(event) { + if (event.previousContainer === event.container) { + moveItemInArray(event.container.data, event.previousIndex, event.currentIndex); + console.log(event); + } + else { + transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex); + this.destination = this.confirmedFiltered; + this.destinationChange.emit(this.destination); + } + } + clickedItem(item, ...targets) { + this[targets[0]] = [ + ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1), + ...this[targets[0]] + ]; + this.destination = this.confirmedFiltered; + this.destinationChange.emit(this.destination); + } + filterItems(text) { + this.filterText = text; + if (!text) { + this.availableFiltered = this.source; + return; + } + this.availableFiltered = this.source + .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase())); + } + filterSelectedItems(text) { + this.filterSelectedText = text; + if (!text) { + this.confirmedFiltered = this.destination; + return; + } + this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase())); + } +} +MaterialDualListboxComponent.ɵfac = function MaterialDualListboxComponent_Factory(t) { return new (t || MaterialDualListboxComponent)(); }; +MaterialDualListboxComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MaterialDualListboxComponent, selectors: [["material-dual-listbox"]], inputs: { key: "key", display: "display", width: "width", filter: "filter", searchPlaceholder: "searchPlaceholder", itemsTitle: "itemsTitle", selectedItemsTitle: "selectedItemsTitle", header: "header", showIcons: "showIcons", addIcon: "addIcon", addIconColor: "addIconColor", removeIcon: "removeIcon", removeIconColor: "removeIconColor", source: "source", destination: "destination" }, outputs: { destinationChange: "destinationChange" }, decls: 12, vars: 12, consts: [[3, "ngStyle"], ["cdkDropListGroup", "", 1, "rck-list-container"], [1, "rck-container"], ["class", "rck-title", 4, "ngIf"], ["appearance", "standard", 4, "ngIf"], ["cdkDropList", "", 1, "rck-list", 3, "cdkDropListData", "cdkDropListDropped"], ["class", "rck-box", "cdkDrag", "", 3, "click", 4, "ngFor", "ngForOf"], [1, "rck-title"], ["appearance", "standard"], ["matInput", "", "autocomplete", "off", 3, "ngModel", "ngModelChange"], ["cdkDrag", "", 1, "rck-box", 3, "click"], ["fxHide.xs", "", "mat-list-icon", "", 3, "color", 4, "ngIf"], ["fxHide.xs", "", "mat-list-icon", ""]], template: function MaterialDualListboxComponent_Template(rf, ctx) { if (rf & 1) { + ɵngcc0.ɵɵelementStart(0, "div", 0); + ɵngcc0.ɵɵelementStart(1, "div", 1); + ɵngcc0.ɵɵelementStart(2, "div", 2); + ɵngcc0.ɵɵtemplate(3, MaterialDualListboxComponent_h3_3_Template, 2, 1, "h3", 3); + ɵngcc0.ɵɵtemplate(4, MaterialDualListboxComponent_mat_form_field_4_Template, 6, 5, "mat-form-field", 4); + ɵngcc0.ɵɵelementStart(5, "div", 5); + ɵngcc0.ɵɵlistener("cdkDropListDropped", function MaterialDualListboxComponent_Template_div_cdkDropListDropped_5_listener($event) { return ctx.drop($event); }); + ɵngcc0.ɵɵtemplate(6, MaterialDualListboxComponent_div_6_Template, 3, 2, "div", 6); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementStart(7, "div", 2); + ɵngcc0.ɵɵtemplate(8, MaterialDualListboxComponent_h3_8_Template, 2, 1, "h3", 3); + ɵngcc0.ɵɵtemplate(9, MaterialDualListboxComponent_mat_form_field_9_Template, 6, 5, "mat-form-field", 4); + ɵngcc0.ɵɵelementStart(10, "div", 5); + ɵngcc0.ɵɵlistener("cdkDropListDropped", function MaterialDualListboxComponent_Template_div_cdkDropListDropped_10_listener($event) { return ctx.drop($event); }); + ɵngcc0.ɵɵtemplate(11, MaterialDualListboxComponent_div_11_Template, 3, 2, "div", 6); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementEnd(); + ɵngcc0.ɵɵelementEnd(); + } if (rf & 2) { + ɵngcc0.ɵɵproperty("ngStyle", ɵngcc0.ɵɵpureFunction2(9, _c0, ctx.width, ctx.width)); + ɵngcc0.ɵɵadvance(3); + ɵngcc0.ɵɵproperty("ngIf", ctx.header); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("ngIf", ctx.filter); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("cdkDropListData", ctx.availableFiltered); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("ngForOf", ctx.availableFiltered); + ɵngcc0.ɵɵadvance(2); + ɵngcc0.ɵɵproperty("ngIf", ctx.header); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("ngIf", ctx.filter); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("cdkDropListData", ctx.confirmedFiltered); + ɵngcc0.ɵɵadvance(1); + ɵngcc0.ɵɵproperty("ngForOf", ctx.confirmedFiltered); + } }, directives: [ɵngcc1.NgStyle, ɵngcc2.CdkDropListGroup, ɵngcc1.NgIf, ɵngcc2.CdkDropList, ɵngcc1.NgForOf, ɵngcc3.MatFormField, ɵngcc3.MatLabel, ɵngcc4.MatInput, ɵngcc5.DefaultValueAccessor, ɵngcc5.NgControlStatus, ɵngcc5.NgModel, ɵngcc3.MatPlaceholder, ɵngcc2.CdkDrag, ɵngcc6.MatIcon, ɵngcc7.MatListIconCssMatStyler], styles: ["./material-dual-listbox.component.scss", ".rck-title[_ngcontent-%COMP%]{\n margin-bottom: 0px;\n }\n .rck-list-container[_ngcontent-%COMP%]{\n display: flex;\n flex-wrap: nowrap;\n }\n .rck-container[_ngcontent-%COMP%] {\n width: 180px;\n max-width: 100%;\n margin: 5px 5px 5px 5px;\n display: inline-block;\n vertical-align: top;\n }\n\n .rck-container[_ngcontent-%COMP%]:last-child{\n margin-right: 25px;\n }\n\n .rck-list[_ngcontent-%COMP%] {\n border: solid 1px #ccc;\n min-height: 60px;\n background: white;\n border-radius: 4px;\n overflow: hidden;\n display: block;\n }\n\n .rck-box[_ngcontent-%COMP%] {\n padding: 20px 20px;\n border-bottom: solid 1px #ccc;\n color: rgba(0, 0, 0, 0.87);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n box-sizing: border-box;\n cursor: move;\n background: white;\n font-size: 14px;\n }\n\n .cdk-drag-preview[_ngcontent-%COMP%] {\n box-sizing: border-box;\n border-radius: 4px;\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\n }\n\n .cdk-drag-placeholder[_ngcontent-%COMP%] {\n opacity: 0;\n }\n\n .cdk-drag-animating[_ngcontent-%COMP%] {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }\n\n .rck-box[_ngcontent-%COMP%]:last-child {\n border: none;\n }\n\n .rck-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .rck-box[_ngcontent-%COMP%]:not(.cdk-drag-placeholder) {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }"] }); +MaterialDualListboxComponent.ctorParameters = () => []; +MaterialDualListboxComponent.propDecorators = { + key: [{ type: Input }], + display: [{ type: Input }], + width: [{ type: Input }], + filter: [{ type: Input }], + searchPlaceholder: [{ type: Input }], + itemsTitle: [{ type: Input }], + selectedItemsTitle: [{ type: Input }], + header: [{ type: Input }], + showIcons: [{ type: Input }], + addIcon: [{ type: Input }], + addIconColor: [{ type: Input }], + removeIcon: [{ type: Input }], + removeIconColor: [{ type: Input }], + source: [{ type: Input }], + destination: [{ type: Input }], + destinationChange: [{ type: Output }] +}; +/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(MaterialDualListboxComponent, [{ + type: Component, + args: [{ + selector: 'material-dual-listbox', + template: "\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
", + styles: ['./material-dual-listbox.component.scss'] + }] + }], function () { return []; }, { key: [{ + type: Input + }], display: [{ + type: Input + }], width: [{ + type: Input + }], filter: [{ + type: Input + }], searchPlaceholder: [{ + type: Input + }], itemsTitle: [{ + type: Input + }], selectedItemsTitle: [{ + type: Input + }], header: [{ + type: Input + }], showIcons: [{ + type: Input + }], addIcon: [{ + type: Input + }], addIconColor: [{ + type: Input + }], removeIcon: [{ + type: Input + }], removeIconColor: [{ + type: Input + }], source: [{ + type: Input + }], destination: [{ + type: Input + }], destinationChange: [{ + type: Output + }] }); })(); + +class MaterialDualListboxModule { +} +MaterialDualListboxModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: MaterialDualListboxModule }); +MaterialDualListboxModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function MaterialDualListboxModule_Factory(t) { return new (t || MaterialDualListboxModule)(); }, imports: [[ + BrowserModule, + MatIconModule, + MatInputModule, + MatListModule, + FormsModule, + MatFormFieldModule, + DragDropModule + ]] }); +(function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(MaterialDualListboxModule, { declarations: function () { return [MaterialDualListboxComponent]; }, imports: function () { return [BrowserModule, + MatIconModule, + MatInputModule, + MatListModule, + FormsModule, + MatFormFieldModule, + DragDropModule]; }, exports: function () { return [MaterialDualListboxComponent]; } }); })(); +/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(MaterialDualListboxModule, [{ + type: NgModule, + args: [{ + declarations: [MaterialDualListboxComponent], + imports: [ + BrowserModule, + MatIconModule, + MatInputModule, + MatListModule, + FormsModule, + MatFormFieldModule, + DragDropModule + ], + exports: [MaterialDualListboxComponent] + }] + }], null, null); })(); + +/* + * Public API Surface of material-dual-listbox + */ + +/** + * Generated bundle index. Do not edit. + */ + +export { MaterialDualListboxComponent, MaterialDualListboxModule }; + +//# sourceMappingURL=material-dual-listbox.js.map \ No newline at end of file diff --git a/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js.map b/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js.map new file mode 100644 index 0000000..a443416 --- /dev/null +++ b/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js.map @@ -0,0 +1 @@ +{"version":3,"file":"material-dual-listbox.js","sources":["../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js index 054c170..18796f7 100644 --- a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js +++ b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js @@ -1,8 +1,8 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/drag-drop'), require('@angular/material/input'), require('@angular/material/icon'), require('@angular/material/list'), require('@angular/platform-browser'), require('@angular/forms'), require('@angular/material/form-field')) : - typeof define === 'function' && define.amd ? define('material-dual-listbox', ['exports', '@angular/core', '@angular/cdk/drag-drop', '@angular/material/input', '@angular/material/icon', '@angular/material/list', '@angular/platform-browser', '@angular/forms', '@angular/material/form-field'], factory) : - (global = global || self, factory(global['material-dual-listbox'] = {}, global.ng.core, global.ng.cdk.dragDrop, global.ng.material.input, global.ng.material.icon, global.ng.material.list, global.ng.platformBrowser, global.ng.forms, global.ng.material.formField)); -}(this, (function (exports, core, dragDrop, input, icon, list, platformBrowser, forms, formField) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/drag-drop'), require('@angular/platform-browser'), require('@angular/material/input'), require('@angular/material/icon'), require('@angular/material/list'), require('@angular/forms'), require('@angular/material/form-field')) : + typeof define === 'function' && define.amd ? define('material-dual-listbox', ['exports', '@angular/core', '@angular/cdk/drag-drop', '@angular/platform-browser', '@angular/material/input', '@angular/material/icon', '@angular/material/list', '@angular/forms', '@angular/material/form-field'], factory) : + (global = global || self, factory(global['material-dual-listbox'] = {}, global.ng.core, global.ng.cdk.dragDrop, global.ng.platformBrowser, global.ng.material.input, global.ng.material.icon, global.ng.material.list, global.ng.forms, global.ng.material.formField)); +}(this, (function (exports, core, dragDrop, platformBrowser, input, icon, list, forms, formField) { 'use strict'; /*! ***************************************************************************** Copyright (c) Microsoft Corporation. diff --git a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js.map b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js.map index b2a0681..79e8ce8 100644 --- a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js.map +++ b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"material-dual-listbox.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (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 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport {MatInputModule} from '@angular/material/input'\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatListModule} from '@angular/material/list';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule } from '@angular/forms';\r\nimport {MatFormFieldModule} from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["EventEmitter","moveItemInArray","transferArrayItem","Component","Input","Output","NgModule","BrowserModule","MatIconModule","MatInputModule","MatListModule","FormsModule","MatFormFieldModule","DragDropModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"material-dual-listbox.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (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 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["EventEmitter","moveItemInArray","transferArrayItem","Component","Input","Output","NgModule","BrowserModule","MatIconModule","MatInputModule","MatListModule","FormsModule","MatFormFieldModule","DragDropModule"],"mappings":"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"} \ No newline at end of file diff --git a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js index 0e9b4d3..35d6a73 100644 --- a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js +++ b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js @@ -1,4 +1,4 @@ -!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@angular/core"),require("@angular/cdk/drag-drop"),require("@angular/material/input"),require("@angular/material/icon"),require("@angular/material/list"),require("@angular/platform-browser"),require("@angular/forms"),require("@angular/material/form-field")):"function"==typeof define&&define.amd?define("material-dual-listbox",["exports","@angular/core","@angular/cdk/drag-drop","@angular/material/input","@angular/material/icon","@angular/material/list","@angular/platform-browser","@angular/forms","@angular/material/form-field"],r):r((e=e||self)["material-dual-listbox"]={},e.ng.core,e.ng.cdk.dragDrop,e.ng.material.input,e.ng.material.icon,e.ng.material.list,e.ng.platformBrowser,e.ng.forms,e.ng.material.formField)}(this,(function(e,r,t,n,i,a,o,l,d){"use strict"; +!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@angular/core"),require("@angular/cdk/drag-drop"),require("@angular/platform-browser"),require("@angular/material/input"),require("@angular/material/icon"),require("@angular/material/list"),require("@angular/forms"),require("@angular/material/form-field")):"function"==typeof define&&define.amd?define("material-dual-listbox",["exports","@angular/core","@angular/cdk/drag-drop","@angular/platform-browser","@angular/material/input","@angular/material/icon","@angular/material/list","@angular/forms","@angular/material/form-field"],r):r((e=e||self)["material-dual-listbox"]={},e.ng.core,e.ng.cdk.dragDrop,e.ng.platformBrowser,e.ng.material.input,e.ng.material.icon,e.ng.material.list,e.ng.forms,e.ng.material.formField)}(this,(function(e,r,t,n,i,a,o,l,d){"use strict"; /*! ***************************************************************************** Copyright (c) Microsoft Corporation. @@ -12,5 +12,5 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** */Object.create;function s(e,r){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var n,i,a=t.call(e),o=[];try{for(;(void 0===r||r-- >0)&&!(n=a.next()).done;)o.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(t=a.return)&&t.call(a)}finally{if(i)throw i.error}}return o}function c(){for(var e=[],r=0;r\r\n .rck-title{\r\n margin-bottom: 0px;\r\n }\r\n .rck-list-container{\r\n display: flex;\r\n flex-wrap: nowrap;\r\n }\r\n .rck-container {\r\n width: 180px;\r\n max-width: 100%;\r\n margin: 5px 5px 5px 5px;\r\n display: inline-block;\r\n vertical-align: top;\r\n }\r\n\r\n .rck-container:last-child{\r\n margin-right: 25px;\r\n }\r\n\r\n .rck-list {\r\n border: solid 1px #ccc;\r\n min-height: 60px;\r\n background: white;\r\n border-radius: 4px;\r\n overflow: hidden;\r\n display: block;\r\n }\r\n\r\n .rck-box {\r\n padding: 20px 20px;\r\n border-bottom: solid 1px #ccc;\r\n color: rgba(0, 0, 0, 0.87);\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n box-sizing: border-box;\r\n cursor: move;\r\n background: white;\r\n font-size: 14px;\r\n }\r\n\r\n .cdk-drag-preview {\r\n box-sizing: border-box;\r\n border-radius: 4px;\r\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\r\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\r\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\r\n }\r\n\r\n .cdk-drag-placeholder {\r\n opacity: 0;\r\n }\r\n\r\n .cdk-drag-animating {\r\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\r\n }\r\n\r\n .rck-box:last-child {\r\n border: none;\r\n }\r\n\r\n .rck-list.cdk-drop-list-dragging .rck-box:not(.cdk-drag-placeholder) {\r\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\r\n }\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
',styles:["./material-dual-listbox.component.scss"]}]}],p.ctorParameters=function(){return[]},p.propDecorators={key:[{type:r.Input}],display:[{type:r.Input}],width:[{type:r.Input}],filter:[{type:r.Input}],searchPlaceholder:[{type:r.Input}],itemsTitle:[{type:r.Input}],selectedItemsTitle:[{type:r.Input}],header:[{type:r.Input}],showIcons:[{type:r.Input}],addIcon:[{type:r.Input}],addIconColor:[{type:r.Input}],removeIcon:[{type:r.Input}],removeIconColor:[{type:r.Input}],source:[{type:r.Input}],destination:[{type:r.Input}],destinationChange:[{type:r.Output}]};var m=function(){};m.decorators=[{type:r.NgModule,args:[{declarations:[p],imports:[o.BrowserModule,i.MatIconModule,n.MatInputModule,a.MatListModule,l.FormsModule,d.MatFormFieldModule,t.DragDropModule],exports:[p]}]}],e.MaterialDualListboxComponent=p,e.MaterialDualListboxModule=m,Object.defineProperty(e,"__esModule",{value:!0})})); + ***************************************************************************** */Object.create;function s(e,r){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var n,i,a=t.call(e),o=[];try{for(;(void 0===r||r-- >0)&&!(n=a.next()).done;)o.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(t=a.return)&&t.call(a)}finally{if(i)throw i.error}}return o}function c(){for(var e=[],r=0;r\r\n .rck-title{\r\n margin-bottom: 0px;\r\n }\r\n .rck-list-container{\r\n display: flex;\r\n flex-wrap: nowrap;\r\n }\r\n .rck-container {\r\n width: 180px;\r\n max-width: 100%;\r\n margin: 5px 5px 5px 5px;\r\n display: inline-block;\r\n vertical-align: top;\r\n }\r\n\r\n .rck-container:last-child{\r\n margin-right: 25px;\r\n }\r\n\r\n .rck-list {\r\n border: solid 1px #ccc;\r\n min-height: 60px;\r\n background: white;\r\n border-radius: 4px;\r\n overflow: hidden;\r\n display: block;\r\n }\r\n\r\n .rck-box {\r\n padding: 20px 20px;\r\n border-bottom: solid 1px #ccc;\r\n color: rgba(0, 0, 0, 0.87);\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n box-sizing: border-box;\r\n cursor: move;\r\n background: white;\r\n font-size: 14px;\r\n }\r\n\r\n .cdk-drag-preview {\r\n box-sizing: border-box;\r\n border-radius: 4px;\r\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\r\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\r\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\r\n }\r\n\r\n .cdk-drag-placeholder {\r\n opacity: 0;\r\n }\r\n\r\n .cdk-drag-animating {\r\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\r\n }\r\n\r\n .rck-box:last-child {\r\n border: none;\r\n }\r\n\r\n .rck-list.cdk-drop-list-dragging .rck-box:not(.cdk-drag-placeholder) {\r\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\r\n }\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
',styles:["./material-dual-listbox.component.scss"]}]}],p.ctorParameters=function(){return[]},p.propDecorators={key:[{type:r.Input}],display:[{type:r.Input}],width:[{type:r.Input}],filter:[{type:r.Input}],searchPlaceholder:[{type:r.Input}],itemsTitle:[{type:r.Input}],selectedItemsTitle:[{type:r.Input}],header:[{type:r.Input}],showIcons:[{type:r.Input}],addIcon:[{type:r.Input}],addIconColor:[{type:r.Input}],removeIcon:[{type:r.Input}],removeIconColor:[{type:r.Input}],source:[{type:r.Input}],destination:[{type:r.Input}],destinationChange:[{type:r.Output}]};var m=function(){};m.decorators=[{type:r.NgModule,args:[{declarations:[p],imports:[n.BrowserModule,a.MatIconModule,i.MatInputModule,o.MatListModule,l.FormsModule,d.MatFormFieldModule,t.DragDropModule],exports:[p]}]}],e.MaterialDualListboxComponent=p,e.MaterialDualListboxModule=m,Object.defineProperty(e,"__esModule",{value:!0})})); //# sourceMappingURL=material-dual-listbox.umd.min.js.map \ No newline at end of file diff --git a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js.map b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js.map index 2049bad..694a850 100644 --- a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js.map +++ b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts"],"names":["Object","create","__read","o","n","m","Symbol","iterator","r","e","i","call","ar","next","done","push","value","error","__spread","arguments","length","concat","MaterialDualListboxComponent","this","key","display","width","filter","searchPlaceholder","itemsTitle","selectedItemsTitle","header","showIcons","addIcon","addIconColor","removeIcon","removeIconColor","source","destination","destinationChange","EventEmitter","availableFiltered","confirmedFiltered","filterText","filterSelectedText","prototype","ngOnInit","update","filterItems","filterSelectedItems","drop","event","previousContainer","container","moveItemInArray","data","previousIndex","currentIndex","console","log","transferArrayItem","emit","clickedItem","item","targets","_i","splice","indexOf","text","_this","toLowerCase","includes","Component","args","selector","template","Input","Output","NgModule","declarations","imports","BrowserModule","MatIconModule","MatInputModule","MatListModule","FormsModule","MatFormFieldModule","DragDropModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (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 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport {MatInputModule} from '@angular/material/input'\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatListModule} from '@angular/material/list';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule } from '@angular/forms';\r\nimport {MatFormFieldModule} from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts"],"names":["Object","create","__read","o","n","m","Symbol","iterator","r","e","i","call","ar","next","done","push","value","error","__spread","arguments","length","concat","MaterialDualListboxComponent","this","key","display","width","filter","searchPlaceholder","itemsTitle","selectedItemsTitle","header","showIcons","addIcon","addIconColor","removeIcon","removeIconColor","source","destination","destinationChange","EventEmitter","availableFiltered","confirmedFiltered","filterText","filterSelectedText","prototype","ngOnInit","update","filterItems","filterSelectedItems","drop","event","previousContainer","container","moveItemInArray","data","previousIndex","currentIndex","console","log","transferArrayItem","emit","clickedItem","item","targets","_i","splice","indexOf","text","_this","toLowerCase","includes","Component","args","selector","template","Input","Output","NgModule","declarations","imports","BrowserModule","MatIconModule","MatInputModule","MatListModule","FormsModule","MatFormFieldModule","DragDropModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (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 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/esm2015/lib/material-dual-listbox.module.js b/dist/material-dual-listbox/esm2015/lib/material-dual-listbox.module.js index 10c58d4..4e8e9ea 100644 --- a/dist/material-dual-listbox/esm2015/lib/material-dual-listbox.module.js +++ b/dist/material-dual-listbox/esm2015/lib/material-dual-listbox.module.js @@ -1,9 +1,9 @@ import { NgModule } from '@angular/core'; +import { BrowserModule } from '@angular/platform-browser'; import { MaterialDualListboxComponent } from './material-dual-listbox.component'; import { MatInputModule } from '@angular/material/input'; import { MatIconModule } from '@angular/material/icon'; import { MatListModule } from '@angular/material/list'; -import { BrowserModule } from '@angular/platform-browser'; import { FormsModule } from '@angular/forms'; import { MatFormFieldModule } from '@angular/material/form-field'; import { DragDropModule } from '@angular/cdk/drag-drop'; @@ -24,4 +24,4 @@ MaterialDualListboxModule.decorators = [ exports: [MaterialDualListboxComponent] },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtZHVhbC1saXN0Ym94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdGVyaWFsLWR1YWwtbGlzdGJveC9zcmMvbGliL21hdGVyaWFsLWR1YWwtbGlzdGJveC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNqRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUE7QUFDdEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhCQUE4QixDQUFBO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQWN4RCxNQUFNLE9BQU8seUJBQXlCOzs7WUFickMsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLDRCQUE0QixDQUFDO2dCQUM1QyxPQUFPLEVBQUU7b0JBQ1AsYUFBYTtvQkFDYixhQUFhO29CQUNiLGNBQWM7b0JBQ2QsYUFBYTtvQkFDYixXQUFXO29CQUNYLGtCQUFrQjtvQkFDbEIsY0FBYztpQkFDZjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQzthQUN4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdGVyaWFsRHVhbExpc3Rib3hDb21wb25lbnQgfSBmcm9tICcuL21hdGVyaWFsLWR1YWwtbGlzdGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQge01hdElucHV0TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCdcclxuaW1wb3J0IHtNYXRJY29uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHtNYXRMaXN0TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcclxuaW1wb3J0IHsgQnJvd3Nlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtNYXRGb3JtRmllbGRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnXHJcbmltcG9ydCB7IERyYWdEcm9wTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbTWF0ZXJpYWxEdWFsTGlzdGJveENvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQnJvd3Nlck1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdExpc3RNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgIERyYWdEcm9wTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbTWF0ZXJpYWxEdWFsTGlzdGJveENvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsRHVhbExpc3Rib3hNb2R1bGUgeyB9XHJcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtZHVhbC1saXN0Ym94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdGVyaWFsLWR1YWwtbGlzdGJveC9zcmMvbGliL21hdGVyaWFsLWR1YWwtbGlzdGJveC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQWN4RCxNQUFNLE9BQU8seUJBQXlCOzs7WUFickMsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLDRCQUE0QixDQUFDO2dCQUM1QyxPQUFPLEVBQUU7b0JBQ1AsYUFBYTtvQkFDYixhQUFhO29CQUNiLGNBQWM7b0JBQ2QsYUFBYTtvQkFDYixXQUFXO29CQUNYLGtCQUFrQjtvQkFDbEIsY0FBYztpQkFDZjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQzthQUN4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJyb3dzZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgTWF0ZXJpYWxEdWFsTGlzdGJveENvbXBvbmVudCB9IGZyb20gJy4vbWF0ZXJpYWwtZHVhbC1saXN0Ym94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnXHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCdcclxuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtNYXRlcmlhbER1YWxMaXN0Ym94Q29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBCcm93c2VyTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgTWF0TGlzdE1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgRHJhZ0Ryb3BNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtNYXRlcmlhbER1YWxMaXN0Ym94Q29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxEdWFsTGlzdGJveE1vZHVsZSB7IH1cclxuIl19 \ No newline at end of file diff --git a/dist/material-dual-listbox/fesm2015/material-dual-listbox.js b/dist/material-dual-listbox/fesm2015/material-dual-listbox.js index d227cb0..7795562 100644 --- a/dist/material-dual-listbox/fesm2015/material-dual-listbox.js +++ b/dist/material-dual-listbox/fesm2015/material-dual-listbox.js @@ -1,9 +1,9 @@ import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core'; import { moveItemInArray, transferArrayItem, DragDropModule } from '@angular/cdk/drag-drop'; +import { BrowserModule } from '@angular/platform-browser'; import { MatInputModule } from '@angular/material/input'; import { MatIconModule } from '@angular/material/icon'; import { MatListModule } from '@angular/material/list'; -import { BrowserModule } from '@angular/platform-browser'; import { FormsModule } from '@angular/forms'; import { MatFormFieldModule } from '@angular/material/form-field'; diff --git a/dist/material-dual-listbox/fesm2015/material-dual-listbox.js.map b/dist/material-dual-listbox/fesm2015/material-dual-listbox.js.map index 24d89bb..ebaebcc 100644 --- a/dist/material-dual-listbox/fesm2015/material-dual-listbox.js.map +++ b/dist/material-dual-listbox/fesm2015/material-dual-listbox.js.map @@ -1 +1 @@ -{"version":3,"file":"material-dual-listbox.js","sources":["../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"sourcesContent":["import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport {MatInputModule} from '@angular/material/input'\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatListModule} from '@angular/material/list';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule } from '@angular/forms';\r\nimport {MatFormFieldModule} from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"material-dual-listbox.js","sources":["../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"sourcesContent":["import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts index 9a5b5f6..47537b4 100644 --- a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts +++ b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts @@ -1,5 +1,6 @@ import { EventEmitter, OnInit } from '@angular/core'; import { CdkDragDrop } from '@angular/cdk/drag-drop'; +import * as ɵngcc0 from '@angular/core'; export declare class MaterialDualListboxComponent implements OnInit { key: string; display: any; @@ -28,4 +29,8 @@ export declare class MaterialDualListboxComponent implements OnInit { clickedItem(item: any, ...targets: string[]): void; filterItems(text: string): void; filterSelectedItems(text: string): void; + static ɵfac: ɵngcc0.ɵɵFactoryDef; + static ɵcmp: ɵngcc0.ɵɵComponentDefWithMeta; } + +//# sourceMappingURL=material-dual-listbox.component.d.ts.map \ No newline at end of file diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.__ivy_ngcc_bak b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.__ivy_ngcc_bak new file mode 100644 index 0000000..9a5b5f6 --- /dev/null +++ b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.__ivy_ngcc_bak @@ -0,0 +1,31 @@ +import { EventEmitter, OnInit } from '@angular/core'; +import { CdkDragDrop } from '@angular/cdk/drag-drop'; +export declare class MaterialDualListboxComponent implements OnInit { + key: string; + display: any; + width: string; + filter: boolean; + searchPlaceholder: string; + itemsTitle: string; + selectedItemsTitle: string; + header: boolean; + showIcons: boolean; + addIcon: string; + addIconColor: string; + removeIcon: string; + removeIconColor: string; + source: Array; + destination: Array; + destinationChange: EventEmitter; + availableFiltered: Array; + confirmedFiltered: Array; + filterText: string; + filterSelectedText: string; + constructor(); + ngOnInit(): void; + update(): void; + drop(event: CdkDragDrop): void; + clickedItem(item: any, ...targets: string[]): void; + filterItems(text: string): void; + filterSelectedItems(text: string): void; +} diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.map b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.map new file mode 100644 index 0000000..7d08022 --- /dev/null +++ b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"material-dual-listbox.component.d.ts","sources":["material-dual-listbox.component.d.ts"],"names":[],"mappings":"AAAA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA","sourcesContent":["import { EventEmitter, OnInit } from '@angular/core';\r\nimport { CdkDragDrop } from '@angular/cdk/drag-drop';\r\nexport declare class MaterialDualListboxComponent implements OnInit {\r\n key: string;\r\n display: any;\r\n width: string;\r\n filter: boolean;\r\n searchPlaceholder: string;\r\n itemsTitle: string;\r\n selectedItemsTitle: string;\r\n header: boolean;\r\n showIcons: boolean;\r\n addIcon: string;\r\n addIconColor: string;\r\n removeIcon: string;\r\n removeIconColor: string;\r\n source: Array;\r\n destination: Array;\r\n destinationChange: EventEmitter;\r\n availableFiltered: Array;\r\n confirmedFiltered: Array;\r\n filterText: string;\r\n filterSelectedText: string;\r\n constructor();\r\n ngOnInit(): void;\r\n update(): void;\r\n drop(event: CdkDragDrop): void;\r\n clickedItem(item: any, ...targets: string[]): void;\r\n filterItems(text: string): void;\r\n filterSelectedItems(text: string): void;\r\n}\r\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts index afdf651..0b9b35f 100644 --- a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts +++ b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts @@ -1,2 +1,15 @@ +import * as ɵngcc0 from '@angular/core'; +import * as ɵngcc1 from './material-dual-listbox.component'; +import * as ɵngcc2 from '@angular/platform-browser'; +import * as ɵngcc3 from '@angular/material/icon'; +import * as ɵngcc4 from '@angular/material/input'; +import * as ɵngcc5 from '@angular/material/list'; +import * as ɵngcc6 from '@angular/forms'; +import * as ɵngcc7 from '@angular/material/form-field'; +import * as ɵngcc8 from '@angular/cdk/drag-drop'; export declare class MaterialDualListboxModule { + static ɵmod: ɵngcc0.ɵɵNgModuleDefWithMeta; + static ɵinj: ɵngcc0.ɵɵInjectorDef; } + +//# sourceMappingURL=material-dual-listbox.module.d.ts.map \ No newline at end of file diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.__ivy_ngcc_bak b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.__ivy_ngcc_bak new file mode 100644 index 0000000..afdf651 --- /dev/null +++ b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.__ivy_ngcc_bak @@ -0,0 +1,2 @@ +export declare class MaterialDualListboxModule { +} diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.map b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.map new file mode 100644 index 0000000..37d5687 --- /dev/null +++ b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"material-dual-listbox.module.d.ts","sources":["material-dual-listbox.module.d.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;AACA","sourcesContent":["export declare class MaterialDualListboxModule {\r\n}\r\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/material-dual-listbox.d.ts b/dist/material-dual-listbox/material-dual-listbox.d.ts index e5daacf..fb9ed81 100644 --- a/dist/material-dual-listbox/material-dual-listbox.d.ts +++ b/dist/material-dual-listbox/material-dual-listbox.d.ts @@ -2,3 +2,5 @@ * Generated bundle index. Do not edit. */ export * from './public-api'; + +//# sourceMappingURL=material-dual-listbox.d.ts.map \ No newline at end of file diff --git a/dist/material-dual-listbox/material-dual-listbox.d.ts.__ivy_ngcc_bak b/dist/material-dual-listbox/material-dual-listbox.d.ts.__ivy_ngcc_bak new file mode 100644 index 0000000..e5daacf --- /dev/null +++ b/dist/material-dual-listbox/material-dual-listbox.d.ts.__ivy_ngcc_bak @@ -0,0 +1,4 @@ +/** + * Generated bundle index. Do not edit. + */ +export * from './public-api'; diff --git a/dist/material-dual-listbox/material-dual-listbox.d.ts.map b/dist/material-dual-listbox/material-dual-listbox.d.ts.map new file mode 100644 index 0000000..477e064 --- /dev/null +++ b/dist/material-dual-listbox/material-dual-listbox.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"material-dual-listbox.d.ts","sources":["material-dual-listbox.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA","sourcesContent":["/**\r\n * Generated bundle index. Do not edit.\r\n */\r\nexport * from './public-api';\r\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/package.json b/dist/material-dual-listbox/package.json index 66a788c..ee09aac 100644 --- a/dist/material-dual-listbox/package.json +++ b/dist/material-dual-listbox/package.json @@ -1,6 +1,6 @@ { "name": "material-dual-listbox", - "version": "2.0.9", + "version": "2.0.11", "description": "Simple dual listbox component to use with your Angular 10 App with Angular Material and CDK Drag and Drop.", "homepage": "https://github.com/rockaru/material-dual-listbox/blob/master/README.md", "bugs": { @@ -15,10 +15,10 @@ }, "schematics": "./schematics/collection.json", "peerDependencies": { - "@angular/common": "^10.0.5", - "@angular/core": "^10.0.5", - "@angular/material": "^10.1.0", - "@angular/cdk": "^10.1.0" + "@angular/common": "^10.0.0", + "@angular/core": "^10.0.0", + "@angular/material": "^10.0.0", + "@angular/cdk": "^10.0.0" }, "dependencies": { "tslib": "^2.0.0" @@ -30,11 +30,23 @@ "angular material dual listbox" ], "main": "bundles/material-dual-listbox.umd.js", + "module_ivy_ngcc": "__ivy_ngcc__/fesm2015/material-dual-listbox.js", "module": "fesm2015/material-dual-listbox.js", + "es2015_ivy_ngcc": "__ivy_ngcc__/fesm2015/material-dual-listbox.js", "es2015": "fesm2015/material-dual-listbox.js", "esm2015": "esm2015/material-dual-listbox.js", + "fesm2015_ivy_ngcc": "__ivy_ngcc__/fesm2015/material-dual-listbox.js", "fesm2015": "fesm2015/material-dual-listbox.js", "typings": "material-dual-listbox.d.ts", "metadata": "material-dual-listbox.metadata.json", - "sideEffects": false + "sideEffects": false, + "__processed_by_ivy_ngcc__": { + "es2015": "10.0.5", + "fesm2015": "10.0.5", + "module": "10.0.5", + "typings": "10.0.5" + }, + "scripts": { + "prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled by NGCC. This is not allowed.\\nPlease delete and rebuild the package, without compiling with NGCC, before attempting to publish.\\nNote that NGCC may have been run by importing this package into another project that is being built with Ivy enabled.\\n')\" && exit 1" + } } diff --git a/package-lock.json b/package-lock.json index 3aec14e..5e8deca 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7761,6 +7761,14 @@ "object-visit": "^1.0.0" } }, + "material-dual-listbox": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/material-dual-listbox/-/material-dual-listbox-2.0.12.tgz", + "integrity": "sha512-6J2mI8+siLqnjGGUn6bhbtdnYmwSGxCAXKdJ5emoWQa1RPnvJbFJQK5dgw6Wujran4z4PSUAx1UCaIrVcKJ02A==", + "requires": { + "tslib": "^2.0.0" + } + }, "md5.js": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", diff --git a/package.json b/package.json index dd9f9f1..c2e0a7d 100644 --- a/package.json +++ b/package.json @@ -3,12 +3,14 @@ "version": "0.0.0", "scripts": { "ng": "ng", - "start": "ng serve", + "start": "ng serve demo", "build": "ng build material-dual-listbox --prod", + "demo": "ng build demo --prod", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", - "publish": "npm publish dist/material-dual-listbox" + "publish": "npm publish dist/material-dual-listbox", + "patch": "npm version patch dist/material-dual-listbox" }, "dependencies": { "@angular/animations": "~10.0.0", @@ -21,6 +23,7 @@ "@angular/platform-browser": "~10.0.0", "@angular/platform-browser-dynamic": "~10.0.0", "@angular/router": "~10.0.0", + "material-dual-listbox": "^2.0.12", "rxjs": "~6.5.5", "tslib": "^2.0.0", "zone.js": "~0.10.3" diff --git a/projects/demo/.browserslistrc b/projects/demo/.browserslistrc new file mode 100644 index 0000000..0ccadaf --- /dev/null +++ b/projects/demo/.browserslistrc @@ -0,0 +1,18 @@ +# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. +# For additional information regarding the format and rule options, please see: +# https://github.com/browserslist/browserslist#queries + +# For the full list of supported browsers by the Angular framework, please see: +# https://angular.io/guide/browser-support + +# You can see what browsers were selected by your queries by running: +# npx browserslist + +last 1 Chrome version +last 1 Firefox version +last 2 Edge major versions +last 2 Safari major versions +last 2 iOS major versions +Firefox ESR +not IE 9-10 # Angular support for IE 9-10 has been deprecated and will be removed as of Angular v11. To opt-in, remove the 'not' prefix on this line. +not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. diff --git a/projects/demo/e2e/protractor.conf.js b/projects/demo/e2e/protractor.conf.js new file mode 100644 index 0000000..f238c0b --- /dev/null +++ b/projects/demo/e2e/protractor.conf.js @@ -0,0 +1,36 @@ +// @ts-check +// Protractor configuration file, see link for more information +// https://github.com/angular/protractor/blob/master/lib/config.ts + +const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); + +/** + * @type { import("protractor").Config } + */ +exports.config = { + allScriptsTimeout: 11000, + specs: [ + './src/**/*.e2e-spec.ts' + ], + capabilities: { + browserName: 'chrome' + }, + directConnect: true, + baseUrl: 'http://localhost:4200/', + framework: 'jasmine', + jasmineNodeOpts: { + showColors: true, + defaultTimeoutInterval: 30000, + print: function() {} + }, + onPrepare() { + require('ts-node').register({ + project: require('path').join(__dirname, './tsconfig.json') + }); + jasmine.getEnv().addReporter(new SpecReporter({ + spec: { + displayStacktrace: StacktraceOption.PRETTY + } + })); + } +}; \ No newline at end of file diff --git a/projects/demo/e2e/src/app.e2e-spec.ts b/projects/demo/e2e/src/app.e2e-spec.ts new file mode 100644 index 0000000..c360449 --- /dev/null +++ b/projects/demo/e2e/src/app.e2e-spec.ts @@ -0,0 +1,23 @@ +import { AppPage } from './app.po'; +import { browser, logging } from 'protractor'; + +describe('workspace-project App', () => { + let page: AppPage; + + beforeEach(() => { + page = new AppPage(); + }); + + it('should display welcome message', () => { + page.navigateTo(); + expect(page.getTitleText()).toEqual('demo app is running!'); + }); + + afterEach(async () => { + // Assert that there are no errors emitted from the browser + const logs = await browser.manage().logs().get(logging.Type.BROWSER); + expect(logs).not.toContain(jasmine.objectContaining({ + level: logging.Level.SEVERE, + } as logging.Entry)); + }); +}); diff --git a/projects/demo/e2e/src/app.po.ts b/projects/demo/e2e/src/app.po.ts new file mode 100644 index 0000000..b68475e --- /dev/null +++ b/projects/demo/e2e/src/app.po.ts @@ -0,0 +1,11 @@ +import { browser, by, element } from 'protractor'; + +export class AppPage { + navigateTo(): Promise { + return browser.get(browser.baseUrl) as Promise; + } + + getTitleText(): Promise { + return element(by.css('app-root .content span')).getText() as Promise; + } +} diff --git a/projects/demo/e2e/tsconfig.json b/projects/demo/e2e/tsconfig.json new file mode 100644 index 0000000..e5058a2 --- /dev/null +++ b/projects/demo/e2e/tsconfig.json @@ -0,0 +1,14 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "../../../out-tsc/e2e", + "module": "commonjs", + "target": "es2018", + "types": [ + "jasmine", + "jasminewd2", + "node" + ] + } +} diff --git a/projects/demo/karma.conf.js b/projects/demo/karma.conf.js new file mode 100644 index 0000000..0b7038b --- /dev/null +++ b/projects/demo/karma.conf.js @@ -0,0 +1,32 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage-istanbul-reporter'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + coverageIstanbulReporter: { + dir: require('path').join(__dirname, '../../coverage/demo'), + reports: ['html', 'lcovonly', 'text-summary'], + fixWebpackSourcePaths: true + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/projects/demo/src/app/app.component.html b/projects/demo/src/app/app.component.html new file mode 100644 index 0000000..79dd855 --- /dev/null +++ b/projects/demo/src/app/app.component.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/projects/demo/src/app/app.component.scss b/projects/demo/src/app/app.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/projects/demo/src/app/app.component.spec.ts b/projects/demo/src/app/app.component.spec.ts new file mode 100644 index 0000000..38d448f --- /dev/null +++ b/projects/demo/src/app/app.component.spec.ts @@ -0,0 +1,31 @@ +import { TestBed, async } from '@angular/core/testing'; +import { AppComponent } from './app.component'; + +describe('AppComponent', () => { + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ + AppComponent + ], + }).compileComponents(); + })); + + it('should create the app', () => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.componentInstance; + expect(app).toBeTruthy(); + }); + + it(`should have as title 'demo'`, () => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.componentInstance; + expect(app.title).toEqual('demo'); + }); + + it('should render title', () => { + const fixture = TestBed.createComponent(AppComponent); + fixture.detectChanges(); + const compiled = fixture.nativeElement; + expect(compiled.querySelector('.content span').textContent).toContain('demo app is running!'); + }); +}); diff --git a/projects/demo/src/app/app.component.ts b/projects/demo/src/app/app.component.ts new file mode 100644 index 0000000..1ee0e60 --- /dev/null +++ b/projects/demo/src/app/app.component.ts @@ -0,0 +1,17 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-root', + templateUrl: './app.component.html', + styleUrls: ['./app.component.scss'] +}) +export class AppComponent { + title = 'demo'; + + source = [] + destination = [] + + constructor(){ + this.source = [{name:"one"},{name:"two"},{name:"tree"},{name:"four"}] + } +} diff --git a/projects/demo/src/app/app.module.ts b/projects/demo/src/app/app.module.ts new file mode 100644 index 0000000..1f7f255 --- /dev/null +++ b/projects/demo/src/app/app.module.ts @@ -0,0 +1,20 @@ +import { BrowserModule } from '@angular/platform-browser'; +import { NgModule } from '@angular/core'; +import { MaterialDualListboxModule } from 'material-dual-listbox'; +import { AppComponent } from './app.component'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; + +@NgModule({ + declarations: [ + AppComponent + ], + imports: [ + BrowserModule, + MaterialDualListboxModule, + BrowserAnimationsModule, + + ], + providers: [], + bootstrap: [AppComponent] +}) +export class AppModule { } diff --git a/projects/demo/src/assets/.gitkeep b/projects/demo/src/assets/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/projects/demo/src/environments/environment.prod.ts b/projects/demo/src/environments/environment.prod.ts new file mode 100644 index 0000000..3612073 --- /dev/null +++ b/projects/demo/src/environments/environment.prod.ts @@ -0,0 +1,3 @@ +export const environment = { + production: true +}; diff --git a/projects/demo/src/environments/environment.ts b/projects/demo/src/environments/environment.ts new file mode 100644 index 0000000..7b4f817 --- /dev/null +++ b/projects/demo/src/environments/environment.ts @@ -0,0 +1,16 @@ +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. + +export const environment = { + production: false +}; + +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/dist/zone-error'; // Included with Angular CLI. diff --git a/projects/demo/src/favicon.ico b/projects/demo/src/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..997406ad22c29aae95893fb3d666c30258a09537 GIT binary patch literal 948 zcmV;l155mgP)CBYU7IjCFmI-B}4sMJt3^s9NVg!P0 z6hDQy(L`XWMkB@zOLgN$4KYz;j0zZxq9KKdpZE#5@k0crP^5f9KO};h)ZDQ%ybhht z%t9#h|nu0K(bJ ztIkhEr!*UyrZWQ1k2+YkGqDi8Z<|mIN&$kzpKl{cNP=OQzXHz>vn+c)F)zO|Bou>E z2|-d_=qY#Y+yOu1a}XI?cU}%04)zz%anD(XZC{#~WreV!a$7k2Ug`?&CUEc0EtrkZ zL49MB)h!_K{H(*l_93D5tO0;BUnvYlo+;yss%n^&qjt6fZOa+}+FDO(~2>G z2dx@=JZ?DHP^;b7*Y1as5^uphBsh*s*z&MBd?e@I>-9kU>63PjP&^#5YTOb&x^6Cf z?674rmSHB5Fk!{Gv7rv!?qX#ei_L(XtwVqLX3L}$MI|kJ*w(rhx~tc&L&xP#?cQow zX_|gx$wMr3pRZIIr_;;O|8fAjd;1`nOeu5K(pCu7>^3E&D2OBBq?sYa(%S?GwG&_0-s%_v$L@R!5H_fc)lOb9ZoOO#p`Nn`KU z3LTTBtjwo`7(HA6 z7gmO$yTR!5L>Bsg!X8616{JUngg_@&85%>W=mChTR;x4`P=?PJ~oPuy5 zU-L`C@_!34D21{fD~Y8NVnR3t;aqZI3fIhmgmx}$oc-dKDC6Ap$Gy>a!`A*x2L1v0 WcZ@i?LyX}70000 + + + + Demo + + + + + + + + + + diff --git a/projects/demo/src/main.ts b/projects/demo/src/main.ts new file mode 100644 index 0000000..c7b673c --- /dev/null +++ b/projects/demo/src/main.ts @@ -0,0 +1,12 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +platformBrowserDynamic().bootstrapModule(AppModule) + .catch(err => console.error(err)); diff --git a/projects/demo/src/polyfills.ts b/projects/demo/src/polyfills.ts new file mode 100644 index 0000000..03711e5 --- /dev/null +++ b/projects/demo/src/polyfills.ts @@ -0,0 +1,63 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). + */ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js/dist/zone'; // Included with Angular CLI. + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/projects/demo/src/styles.scss b/projects/demo/src/styles.scss new file mode 100644 index 0000000..7e7239a --- /dev/null +++ b/projects/demo/src/styles.scss @@ -0,0 +1,4 @@ +/* You can add global styles to this file, and also import other style files */ + +html, body { height: 100%; } +body { margin: 0; font-family: Roboto, "Helvetica Neue", sans-serif; } diff --git a/projects/demo/src/test.ts b/projects/demo/src/test.ts new file mode 100644 index 0000000..50193eb --- /dev/null +++ b/projects/demo/src/test.ts @@ -0,0 +1,25 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/dist/zone-testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: { + context(path: string, deep?: boolean, filter?: RegExp): { + keys(): string[]; + (id: string): T; + }; +}; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/projects/demo/tsconfig.app.json b/projects/demo/tsconfig.app.json new file mode 100644 index 0000000..7a51405 --- /dev/null +++ b/projects/demo/tsconfig.app.json @@ -0,0 +1,15 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "outDir": "../../out-tsc/app", + "types": [] + }, + "files": [ + "src/main.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.d.ts" + ] +} diff --git a/projects/demo/tsconfig.spec.json b/projects/demo/tsconfig.spec.json new file mode 100644 index 0000000..f61f384 --- /dev/null +++ b/projects/demo/tsconfig.spec.json @@ -0,0 +1,18 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "outDir": "../../out-tsc/spec", + "types": [ + "jasmine" + ] + }, + "files": [ + "src/test.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/projects/demo/tslint.json b/projects/demo/tslint.json new file mode 100644 index 0000000..19e8161 --- /dev/null +++ b/projects/demo/tslint.json @@ -0,0 +1,17 @@ +{ + "extends": "../../tslint.json", + "rules": { + "directive-selector": [ + true, + "attribute", + "app", + "camelCase" + ], + "component-selector": [ + true, + "element", + "app", + "kebab-case" + ] + } +} diff --git a/projects/material-dual-listbox/package-lock.json b/projects/material-dual-listbox/package-lock.json index 7e6d86b..64c86d2 100644 --- a/projects/material-dual-listbox/package-lock.json +++ b/projects/material-dual-listbox/package-lock.json @@ -1,6 +1,6 @@ { "name": "material-dual-listbox", - "version": "0.0.1", + "version": "2.0.11", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/projects/material-dual-listbox/package.json b/projects/material-dual-listbox/package.json index 090a528..d9a1098 100644 --- a/projects/material-dual-listbox/package.json +++ b/projects/material-dual-listbox/package.json @@ -1,6 +1,6 @@ { "name": "material-dual-listbox", - "version": "2.0.9", + "version": "2.0.10", "description": "Simple dual listbox component to use with your Angular 10 App with Angular Material and CDK Drag and Drop.", "homepage": "https://github.com/rockaru/material-dual-listbox/blob/master/README.md", "bugs": { @@ -22,10 +22,10 @@ "postbuild": "npm run copy:schemas && npm run copy:files && npm run copy:collection" }, "peerDependencies": { - "@angular/common": "^10.0.5", - "@angular/core": "^10.0.5", - "@angular/material": "^10.1.0", - "@angular/cdk": "^10.1.0" + "@angular/common": "^10.0.0", + "@angular/core": "^10.0.0", + "@angular/material": "^10.0.0", + "@angular/cdk": "^10.0.0" }, "dependencies": { "tslib": "^2.0.0" @@ -36,4 +36,4 @@ "multi select", "angular material dual listbox" ] -} \ No newline at end of file +} diff --git a/projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts b/projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts index 6ca1500..46b332f 100644 --- a/projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts +++ b/projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts @@ -1,9 +1,9 @@ import { NgModule } from '@angular/core'; +import { BrowserModule } from '@angular/platform-browser'; import { MaterialDualListboxComponent } from './material-dual-listbox.component'; import { MatInputModule } from '@angular/material/input' import { MatIconModule } from '@angular/material/icon'; import { MatListModule } from '@angular/material/list'; -import { BrowserModule } from '@angular/platform-browser'; import { FormsModule } from '@angular/forms'; import { MatFormFieldModule } from '@angular/material/form-field' import { DragDropModule } from '@angular/cdk/drag-drop'; diff --git a/tsconfig.json b/tsconfig.json index c240915..39d0f5f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,6 +12,12 @@ }, { "path": "./projects/material-dual-listbox/tsconfig.spec.json" + }, + { + "path": "./projects/demo/tsconfig.app.json" + }, + { + "path": "./projects/demo/tsconfig.spec.json" } ] } \ No newline at end of file